String的默认初始化 值初始化值为什么

当前位置:
java中String类型的私有属性value是如何初始化的?
java中String类型的私有属性value是如何初始化的?
来源:网络整理&&&&&时间: 20:02:53&&&&&关键词:string类
关于网友提出的“java中String类型的私有属性value是如何初始化的?”问题疑问,本网通过在网上对“java中String类型的私有属性value是如何初始化的?”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题:java中String类型的私有属性value是如何初始化的?
描述: String类型的构造方法如下:
无参: public String() {
this.value = new char[0];
public String(String original) {
this.value = original.
this.hash = original.
} 当 运行 String s = new String("hello world"); 的时候,是如何将hello world 赋值给引用s 的呢?
解决方案1:String s = new String("hello world"); 并没有把"hello world"的引用传递给s,而是传递了其中的字符串内容数组而已,这两个字符串对象的地址是不一样的,但是它们的内容是一样的。你可以通过 s == "hello world" 发现这两个地址的区别,这也就是为什么String要通过equals来比较的原因。解决方案2:http://my.oschina.net/treenewbee/blog/352353解决方案3:String s = new String("hello world");其实是创建了两个对象,一个在栈中,一个在堆中(new 出来的对象保存在堆中),所以尽量不要这么去写。再来回答你的问题,这里其是将引用指向了堆中“hello world”的地址。
以上介绍了“java中String类型的私有属性value是如何初始化的?”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/1167252.html
上一篇: 下一篇:博主最新文章
博主热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)string型变量有没有必要初始化?为什么?_百度知道
string型变量有没有必要初始化?为什么?
我有更好的答案
&quot如果这个String需要被返回,那么可以定义
String str = &希望对你有帮助;这样;;而后,也是要String
str = &&,可以在return str的时候,避免变量未初始化异常同理用于在其他一些需要return的变量的时候其他一些情况,看情况而论,需要避免空指针的时候,可能会有if(xxxxxxxx){
str = &xxxxxxx&;}而假如以下的修改str值得条件并没有触发,那么str还是为 &&quot
采纳率:36%
定义一个string类型的变量程序会自动将他初始化为“”的,不用特意初始化
为您推荐:
其他类似问题
string的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。16:06 提问
C#关于string的初始化的
string如何为字符缓冲区开辟内存空间,如pb里用space
string如何功能建立一个由指定字符串填充的指定长度的字符串,如pb里用fill
按赞数排序
string s = new string('a', 10);
用new的方式,构造函数参数指定
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐57被浏览7,529分享邀请回答414 条评论分享收藏感谢收起

我要回帖

更多关于 默认初始化和值初始化 的文章

 

随机推荐