易错、易望、基础、重要知识点 ——API常用类1——StringBuffer/StringBuilder

注:这些是我个人觉得应该多加注意,或者编程中的技巧,或应该知道的零散知识点。只是对学习java的补充,和重点的点名,不适合初学者的主要学习资料。里面有些必须要记住的,都会给标记出来,无论是想学习java的还是打算找java工作的都可以看一下。

 

1、String StringBuffer

1.         都是有char[] 构成,(数组,一旦创建,长度固定,默认是16个)

       2.        String 的char[] 被final修饰,一旦被赋值不能更改,

    StringBuffer的char[] 不会final修饰,,,,

 

StringBuffer(): 构造一个其中不带字符的字符串缓冲区,初始容量为 16 个字符。

  数组长度是通过赋值原数组内容,来扩容原数组。如下图。


      3、StringBuffer.insert(index,任意类型);;出入位置是 第index的前面  

        eg:

          //StringBuffer的初始化

          StringBuffer buffer=new StringBuffer("abcde"); 

      //  (另一种赋值:StringBuffer buffer=new StringBuffer();

               //      buffer.append("abcde");        )

        buffer.insert(5,55);

        System.out.println(buffer);  

 

 4StringBuffer . subString()  返回值是String 类型

   

 5StringStringBuffer对象的相互转化

        StringBuffer String    buffer.toString();

                                String的构造方法 Stringbuffer);  

                                String s=new String(buffer);

  6、遇到字符串的拼接就用 StringBuffer.append();这样会节省空间,不用 String 类型+“String 元素

  7String的反转

    String是不变量,不能进行反转, 不过可以借助StringBuffer 进行反转 StringBufferreverse();   

2StringBuilder StringBuffer 

        StringBuffer 线程安全

3、String的不变性

程序:

在method方法中写输出,S 的值为重新复制出来的s值

public class StringBufferDemo1 {

    public static void main(String[] args) {

        

        String s="abc";

        method(s);

    }

    public static void method(String s) {

        s=s+"de";

        System.out.println(s);//此处的s为重新复制出来的s,但不会改变原s的值(即不会改变原s的地址)

    }

}

 

输出结果:abcde

 

在主函数中 写输出  s为原 s的值

public class StringBufferDemo1 {

    public static void main(String[] args) {

        

        String s="abc";

        method(s);

        System.out.println(s);

    }

    public static void method(String s) {

        s=s+"de";

    }

}

输出结果:abc

 

        

 

   

 

 

 StringBuffer 

    

 

    

           

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值