日期:2014-05-20  浏览次数:20945 次

String变量和基本类型的变量有什么不同?
String变量和基本类型的变量有什么不同?
原文:
http://bbs.tarena.com.cn/topic.cgi?forum=1&topic=10953&show=0

谢谢了

------解决方案--------------------
举例子:
 Integer是基本类型,他的默认值是0,而int的默认值是空
------解决方案--------------------
String 是对象类型 可以使用好多方法
基本类型可以简单的理解就是1 2 3 ,只是一系列的数
------解决方案--------------------
举例子: 
 Integer是基本类型,他的默认值是0,而int的默认值是空

是不是写反了啊。
------解决方案--------------------
String是一个对象,而且是一个特别的对象,他的值是不可以变的!
当他的值发生变化的时候就会从新开辟一个内存,重新创建对象!
java中对象传递都是按地址传的这个大家应该都知道,举例说一下

String s = new String("abc");
println(s);//调用的时候传递的是字符"abc"的地址,也就是引用

system.out.println(s);//这个时候s没有变,但是pinrlnt()方法里面的str却变了,
这就是string 为什么是按引用传递却不影响传入值的原因,因为他是不可变的,

public void println(String str){
str = str + "xyz";//这个时候他的值发生的变化,他会重新创建一个"abcxyz"把地址给str;
}
基本数据类型是按值传递的,传入的值会会根据方法内部的修改而修改,具体看下我的博客有篇关于String的文章!
------解决方案--------------------
String是对象
对象就是class
class就可能有属性和方法
是面向对象的基础

而基本类型其实不符合面向对象的思想
只不过它访问速度更快一些,
所以才保留下来了,
可以用在一些特殊的场合
------解决方案--------------------
String是引用类型.byte,short,int,long,float,double,boolean,char是简单类型。每种简单类型也都有与之相对应的引用类型。简单类型变量的存在只是为了迎合C语系程序员的习惯而已。
------解决方案--------------------
Integer是基本类型 int 是引用
------解决方案--------------------
传说每天回帖即可获得 10 分可用分!
 =====================================
刚发现,以前都不知道