Java—常用类

1.StringBuffer类

StringBuffer是线程安全的,可变的字符序列。

StringBuffer类的常用方法

方法 功能
append(String str) 将指定的字符串附加到此字符序列。
charAt(int index) 返回 char在指定索引在这个序列值。
delete(int start, int end) 删除此序列的子字符串中的字符。
deleteCharAt(int index) 删除 char在这个序列中的指定位置。
indexOf(String str) 返回指定子字符串第一次出现的字符串内的索引。
insert(int offset, String str) 在此序列中插入 boolean参数的字符串表示形式。
lastIndexOf(String str) 返回指定子字符串最右边出现的字符串内的索引。
length() 返回长度(字符数)。
replace(int start, int end, String str) 用指定的String中的字符替换此序列的子字符串中的 String 。
setCharAt(int index, char ch) 指定索引处的字符设置为 ch 。
subSequence(int start, int end) 返回一个新的字符序列,该序列是该序列的子序列。
toString() 返回表示此顺序中的数据的字符串。
substring(int start) 返回一个新的 String ,其中包含此字符序列中当前包含的字符的子序列。


public class Demo6 {
    public static void main(String[] args) {
        StringBuffer sb = new StringBuffer();
        //将指定的字符串附加到此字符序列
        sb.append("张三");
        sb.append("李四");
        //返回char在指定索引在这个序列值
        System.out.println(sb.charAt(0));//张
        //删除此序列的字符串中的字符,去头不去尾
        sb.delete(0, 2);
        System.out.println(sb);//李四
        //删除char在这个序列中的指定位置
        sb.deleteCharAt(1);
        System.out.println(sb);//李
        //用指定的字符替换此序列的的子字符串
        sb.replace(0, 1, "王二麻子");
        System.out.println(sb);//王二麻子
        System.out.println(sb.indexOf("王二"));
        //在此序列中插入boolean参数的字符串形式
        sb.insert(1, "关羽");
        System.out.println(sb);
        //返回一个新的字符序列,该序列是该序列的子序列
        sb.subSequence(1,2);
        System.out.println(sb);
    }
}

面试题:String和Stringbuffer和StringBuilder区别

1.String为固定长度的字符串,StringBuilder和StringBuffer为变长字符串; 2.stringBuffer是线程安全的,StringBuilder是非线程安全的; 3.StringBuffer和StringBuilder的默认初始容量是16,可以提前预估好字符串的长度,进一步减少扩容带来的额外开销

代码实现:


public class Demo2 {
    public static void main(String[] args) {
        String(10000);
        StringBuffer(10000);
        StringBuilder(10000);


    }
    //String耗时
    public static void String(int n){
        String str = "";
        long startString = System.currentTimeMillis();
        for (int i = 0; i < n; i++) {
            str += i;
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值