• JAVA_SE基础——66.StringBuffer类 ③


    如果需要频繁修改字符串 的内容,建议使用字符串缓冲 类(StringBuffer)。

    StringBuffer 其实就是一个存储字符 的容器。

    容器的具备 的行为
    常用方法
    String 

    增加
    append(boolean b)    可以添加任意类型 的数据到容器中
    insert(int offset, boolean b)  指定插入的索引值,插入对应 的内容。 


    删除
    delete(int start, int end)  根据指定的开始与结束的索引值删除对应的内容。
    deleteCharAt(int index)   根据指定 的索引值删除一个字符。


    修改

    replace(int start, int end, String str) 根据指定 的开始与结束索引值替代成指定的内容。
    reverse()   翻转字符串缓冲类的内容。  abc--->cba

                    setCharAt(int index, char ch)  把指定索引值的字符替换指定的字符。 
                    substring(int start, int end)  根据指定的索引值截取子串。
    ensureCapacity(int minimumCapacity)  指定StringBuffer内部的字符数组长度的。

    查看
    indexOf(String str, int fromIndex) 查找指定的字符串第一次出现的索引值,并且指定开始查找的位置。
    lastIndexOf(String str) 

    capacity() 查看当前字符数组的长度。 
    length() 

    charAt(int index) 
    toString()   把字符串缓冲类的内容转成字符串返回。

    StringBuffer 与 StringBuilder的相同处与不同处:

    相同点:
    1. 两个类都是字符串缓冲类。
    2. 两个类的方法都是一致的。
    不同点:
    1. StringBuffer是线程安全的,操作效率低 ,StringBuilder是线程非安全的,操作效率高。
    2. StringBuffer是jdk1.0出现 的,StringBuilder 是jdk1.5的时候出现的。

    推荐使用: StringBuilder,因为操作效率高。

    public class Demo3 {
    	public static void main(String[] args){
    		//先使用StringBuffer无参的构造函数创建一个字符串缓冲类。
    		StringBuffer mj = new StringBuffer();
    		//添加一组数据liangmeijuan
    		mj.append("LiangMeiJuan");
    		
    		System.out.println("存储的字符:"+mj);
    		//在数组0索引处插入数据
    		mj.insert(0, "I LOVE ");
    		System.out.println("插入数据后的储存字符:"+mj);
    		//翻转字符串内容
    		mj.reverse();
    		System.out.println("翻转字符串的内容:"+mj);
    		//找出J这个字符,从数组0索引开始查找
    		int index = mj.indexOf("J", 0);
    		System.out.println("索引值为:"+index);
    	}
    }
    运行结果:

    存储的字符:LiangMeiJuan
    插入数据后的储存字符:I LOVE LiangMeiJuan
    翻转字符串的内容:nauJieMgnaiL EVOL I
    索引值为:3

  • 相关阅读:
    NodeJ node.js Jquery Ajax 跨域请求
    NodeJ node.js基础
    VueX--- actions→mutations or getters→state 四大金刚
    Vue--- VueX组件间通信链接(共有方法放入了扩展目录store里面) 1.2
    arrayList 和hashSet的区别
    java面试的题目兔子、素数、水仙花
    解决java compiler level does not match the version of the installed java project facet
    Target runtime com.genuitec.runtime.generic.jee50 is not defined工程错误
    eclipse导入tomcat时Unknown version of Tomcat was specified
    eclipse开发SVN下文件显示修改时间和提交作者的方法
  • 原文地址:https://www.cnblogs.com/Jhaiha0/p/8465274.html
Copyright © 2020-2023  润新知