String类和StringBuffer类是Java中的字符串处理类,它们的区别主要有以下几点:可变性:String类是不可变的,一旦创建了String对象,其内容不可被修改。对String对象进行修改或拼接时,会创建新的String对象,旧的String对象不会被改变。StringBuffer类是可变的,可以在现有对象的基础上进行字符串的修改和拼接,而不会创建新的...
解析 String类:用于比较两个字符串,查找和抽取串中的字符或子串,字符串与其他类型的转换等,String类对象的内容一旦被初始化就不能再改变。StringBuffer类:用于内容可以改变的字符串,可以将其他各种类型的数据增加、插入到字符串中,也可以翻转字符串中原来的内容。
解析:String类是不可变类,字符串一旦初始化后,就不能被改变。而StringBuffer类是可变类,字符串值可以呗改变。常常在实际应用中看到累死这样的代码:String s=new(“hello”);s+=”world”,这两句代码首先创建一个字符hello,然后将world追加到hello结尾并重新赋值给变量s。然后,这个过程实际上是这样的:首先创建一个...
首先,String和StringBuffer主要有2个区别: (1)String类对象为不可变对象,一旦你修改了String对象的值,隐性重新创建了一个新的对象,释放原String对象,StringBuffer类对象为可修改对象,可以通过append()方法来修改值 (2)String类对象的性能远不如StringBuffer类。 关于以上具体解释如下: 在java中有3个类来负责字符的操...
String用于字符串操作,属于不可变类,而StringBuffer也是用于字符串操作,不同之处是StringBuffer属于可变类。 String是不可变类,也就是说,String对象一旦被创建,其值将不能被改变,而StringBuffer是可变类,当对象被创建后,仍然可以对其值进行修改。如果一个
String与StringBuffer的另外一个区别在于当实例化String时,可以利用构造函数(String s1=new String("world"))的方式来对其进行初始化,也可以用赋值(String s="Hello")的方式来初始化,而StringBuffer只能使用构造函数(StringBuffer s=new StringBuffer("Hello"))的方式来初始化。String字符串修改实现...
一、内部实现方式不同 1、String:在进行字符串处理时,会生成新的对象。2、StringBuffer:在进行字符串处理时,不生成新的对象,在内存使用上要优于串类。二、使用情况不同 1、String:用在固定的字符串,不经常对字符串进行更改的情况。2、StringBuffer:经常需要对一个字符串进行修改,例如插入,...
1 string和stringbuffer和stringbuilder的区别1、String是字符串常量,而StringBuffer和StringBuilder是字符串变量。由String创建的字符内容是不可改变的,而由StringBuffer和StringBuidler创建的字符内容是可以改变的。2、StringBuffer是线程安全的,而StringBuilder是非线程安全的。StringBuilder是从JDK 5开始,为StringBuffer类...
String类中使用字符数组保存字符串,private final char value[],所以string对象是不可变的。StringBuilder与StringBuffer都继承自AbstractStringBuilder类,在AbstractStringBuilder中也是使用字符数组保存字符串,char[] value,这两种对象都是可变的。 线程安全性 String中的对象是不可变的,也就可以理解...
String 和StringBuffer的主要区别是什么?相关知识点: 试题来源: 解析 String是引用类型,不是最基本的数据类型。\nString与StringBuffer的区别包括String的长度不可改变,不能对String的内容进行修改,而StringBuffer长度可变,并且可以对StringBuffer对象的内容进行修改。StringBuffer是线程安全的。反馈 收藏 ...