解析 String类:用于比较两个字符串,查找和抽取串中的字符或子串,字符串与其他类型的转换等,String类对象的内容一旦被初始化就不能再改变。StringBuffer类:用于内容可以改变的字符串,可以将其他各种类型的数据增加、插入到字符串中,也可以翻转字符串中原来的内容。
String 类表示的字符串是常量,一旦创建后,内容和长度都是无法改变的。而 StringBuffer 表示字符容器,其内容和长度可以随时修改。在操作字符串时,如果该字符串仅用于表示数据类型,则使用 String 类即可,但是如果需要对字符串中的字符进行增删操作,则使用 StringBuffer 类。 String 类覆盖了 Object 类的 equals() 方法...
String类和StringBuffer类的区别 String类和StringBuffer类的区别包括:1.可变性不同;2.使用条件不同;3.覆盖方法不同;4.对象可连接性不同;5.toString方法的实现不同;6.操作的灵活性不同。可变性不同是指,String类是不可变类,一旦创建其内容和长度都无法改变;而StringBuffer类是可变类,其内容和长度可以修改。 1...
String类是不可变类,新建的对象为不可变对象(String类的内容和长度是固定的),一旦被创建就不能修改它的值(对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去);String类是final类型不可被继承。 StringBuffer类是可变类,新建的对象是一个可变的对象,当需要修改其内容的时候,不需要再创...
(1)字符修改上的区别(主要) String:不可变字符串; StringBuffer:可变字符串、效率低、线程安全; StringBuilder:可变字符序列、效率高、线程不安全; (2)初始化上的区别,String可以空赋值,后者不行,报错 ①String StringBuffer s = null; StringBuffer s = “abc”; ...
String类和StringBuffer类对象区别主要有以下两点: 1、String类对象为不可变对象,一旦你修改了String对象的值,隐性重新创建了一个新的对象,释放原String对象,StringBuffer类对象为可修改对象,可以通过append()方法来修改值; 2、String类对象的性能远远不如StringBuffer类。
④直接赋值不一定创建对象,如果字符串常量池中有的话就直接堆中的实例指向常量池中,不需要创建对象。 ⑤final修饰类,不能被继承。 ⑥String a = “1”+“2”+“3”+“4”;这个字符串拼接过程要产生多个对象完成,效率比较低。 2.String和StringBuilder、StringBuffer的区别? ①可变性:String不可变的字符序列,Bu...
StringBufferappend(参数); 追加字符串,将参数连接到字符串后并返回。 append() 方法与concat() 方法: 相同点:都是把一个字符串追加到另一个字符串后。 不同:的是String类中只能将String类型的字符串追加到另一个后面,StringBuffer类中可以将任何类型的值追加到字符串后。
由于StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。然而在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。下面我们来看下线程安全方面的区别。 2. 线程安全 StringBuilder 是线程不安全的,而 StringBuffer 是线程安全的。