可变字符串是Java.lang包下的
在我们学习到JDBC的时候需要将原有的sql语句根据不同的差异添加一段新的关键字或者单词,这个时候我们需要用要可变字符串,那么可变字符串又有几种呢,可变字符串有两种StringBuilder和StringBuffer他们二者之间的区别是前者效率高,但是线程不安全,后者效率低,线程安全,这个时候我们就需要根据实际案例去考虑需不需要舍弃效率保全安全性。
StringBuilder str = new StringBuilder("我是可变字符串StringBuilder");
System.out.println(str);
运行结果:
StringBuilder str = new StringBuilder("我是可变字符串StringBuilder");
System.out.println(str);
System.out.println("--------------------------------");
str.append(",你好");//在原有的基础上添加一段字符
System.out.println(str);
System.out.println("--------------------------------");
str.delete(3,6);//删除[3,6)上的字符
System.out.println(str);
System.out.println("--------------------------------");
str.deleteCharAt(10);//删除下标位10的字符
System.out.println(str);
System.out.println("--------------------------------");
str.insert(2,",");//在下标位2的地方插入逗号
System.out.println(str);
System.out.println("--------------------------------");
str.replace(3,5,"好好查查对不对");//在下标[3,5)的位置上插入字符串
System.out.println(str);
System.out.println("--------------------------------");
str.setCharAt(3,'!');//替换指定位置的字符
System.out.println(str);
System.out.println("--------------------------------");
String str1 = str.substring(2,4);//截取[2,4),返回一个新的字符串,对原有的没影响
System.out.println(str1);
System.out.println(str);
运行结果:
其中StringBuilder和StringBuffer的方法和构造都一样