JavaSE8基础 StringBuffer delete 删除指定索引值的一个字符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaSE8基础 StringBuffer delete 删除指定索引值的一个字符相关的知识,希望对你有一定的参考价值。



    os :windows7 x64
    jdk:jdk-8u131-windows-x64
    ide:Eclipse Oxygen Release (4.7.0)
    
    
code:

package jizuiku1;

public class Demo010 {
	public static void main(String[] args) {
		StringBuffer sb = new StringBuffer();
		sb.append("cnblog_").append("jizuiku_").append("Demo");
		System.out.println(sb);
		
		//删除索引值为3的字符
		sb.deleteCharAt(3);//删的是l
		System.out.println(sb);
	}
}

 


result:
技术分享

 


sourceCode:

    @Override
    public synchronized StringBuffer deleteCharAt(int index) {
        toStringCache = null;
        super.deleteCharAt(index);
        return this;
    }

   重写标记,调用的是父类的 同名方法,那么进入父类查看同名方法

    public AbstractStringBuilder deleteCharAt(int index) {
        if ((index < 0) || (index >= count))
            throw new StringIndexOutOfBoundsException(index);
        System.arraycopy(value, index+1, value, index, count-index-1);
        count--;
        return this;
    }

   (⊙o⊙)哦,虽然看不太懂,但是也明白了许多。


    


Java优秀,值得学习。
学习资源:API手册+Java源码+清净的心地。













以上是关于JavaSE8基础 StringBuffer delete 删除指定索引值的一个字符的主要内容,如果未能解决你的问题,请参考以下文章

JavaSE8基础 StringBuffer 将一个char字符重复指定次数后输出

JavaSE8基础 StringBuffer delete 删除指定索引值的一个字符

JavaSE8基础 StringBuffer substring 将变量分割返回String,其本身不变

JavaSE8基础 StringBuffer reverse 倒置缓冲区内的字符串

JavaSE8基础 通过String与StringBuffer的相互转换,实现倒置字符串

JavaSE8基础 StringBuffer与String变量在追加字符串后,引用变量的地址发生改变