String是否是基本数据类型?
今天突发奇想,不知道怎么的就想到了String是否是基本数据类型这个概念上了。。
在我的印象中,String是基本数据类型,但是百度了一下,很多说String是一个对象,而不是基本数据类型。
这样就产生了一个问题,如果一个方法传入一个String类型,外面的String类型的值是不会变的,而这属于基本数据类型的特性吧?
求高手详细解答下。
[解决办法]
只知道String不是基本数据类型。。。
[解决办法]
按照书上说法,不是
[解决办法]
Java里不是。
至于里面外面的原因,我没看清楚你写的,不过绝大部分原因是因为字符串常量区造成的错觉。
[解决办法]
String是引用类型的一个类,不是基本的数据类型,基本数据类型都是原始类型。
[解决办法]
public final class String
extends Object
implements Serializable, Comparable<String>, CharSequence
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "abc"; //1、声明两个对象,值为"abc"的对象赋给str对象
new StringTest().setString(str);
System.out.println(str); //4、str对象没有变
}
public void setString(String str1){ //2、声明了str1对象,把str对象赋给str1
str1 = "123";//3、值为"123"的对象赋给str1对象
}