任何的字符串常量都是String的常量,一旦定义就不可改变,如果改变对象的内容改变的是其引用的指向而已
String使用的是 + 来改变 。而StringBuffer里面更换的是append()方法
String与StringBuffer最大的区别在于 String内容无法更改,StringBuffer可以更改。但是在开发中我们优先选择的还是String类
两个类的继承结构:
public final class String extends Object implements Serializable, Comparable<String>, CharSequence
public final class StringBuffer extends Object implements Serializable, CharSequence
CharSequence是一系列的字符集,如果以后看到CharSequence最简单的就联想到是字符串
String 跟StringBuffer不能直接互相转换
String变为StringBuffer :利用StringBuffer的构造、append()方法
StringBuffer变为String :所有的对象都有一个将对象变为String的方法,使用toString() ;
StringBuffer还有一些String所没有的方法
反转 :public static void reverse()
删除指定范围的数据 : delete(int start,int i)
插入数据: insert (int index,数据类型b)
面试题:请解释String 、StringBuffer 、StringBuilder 的区别:
String的内容不可修改 StringBuffer和StringBuilder的内容可以修改。
StringBuffer采用同步处理,属于线程安全操作。而StringBuilder采用异步处理,属于线程不安全操作。 |
|