StringBuffer和StringBuilder和String的区别
程序员文章站
2024-03-23 14:24:40
...
StringBuffer是jdk1.0版本的,是线程安全的,效率低
StringBuilder是jdk1.5版本的,是线程不安全的,效率高
String是一个不可变的字符序列,StringBufffer和StringBuilder都是可变的字符序列
...........................................................................................。。。。。。。。。。。。。。。。。。。。。。。
String和StringBuffer分别作为参数传递
package com.heima.stringbuffer;
/*
* 形式参数问题
* String作为参数传递
* StringBuffer作为参数传递
*
*
* 基本数据类型的值传递,不改变其值
* 引用数据类型的值传递,改变其值
* */
public class demo_StringBuffer {
public static void main(String[] args) {
String s="heima";
System.out.println(s);
chang(s);//按住ctrl+1自动生成方法
System.out.println(s);//前后两个打印出来都是heima,为什么
//String类虽然是引用数据类型,但是他当作参数传递时和基本数据类型时一样的
StringBuffer sb=new StringBuffer("baima");
System.out.println(sb);
change2(sb);
System.out.println(sb);//这样就能改变了
}
public static void change2(StringBuffer sb) {
sb.append("heima");
}
public static void chang(String s) {
s+="itcast";
}
}
String类虽然是引用数据类型,但是他当作参数传递时和基本数据类型时一样的但是StringBuffer类可以作为引用数据类型
上一篇: Java面试宝典-1
下一篇: 反射学习笔记
推荐阅读
-
Java 基础— 引用变量编译时类型和运行时类型的区别 及属性和静态非静态方法调用规则
-
string,stringbuffer和stringbuilder的区别详解
-
java中的引用类型和值类型的区别
-
String、StringBuffer和StringBuilder的区别
-
String和StringBuffer和StringBuilder的区别
-
String、StringBuffer和StringBuilder的区别
-
toString()、new String()和(String) 、String.ValueOf()的区别
-
基础类型和引用类型的区别
-
StringBuffer和StringBuilder和String的区别
-
define和inline的区别