avatar
b*p
1
一直认为java中String对象如果用new来创建,即使内容一样(identical character
sequ
ences),也还是不同对象,当然在内存中不同地方。
只有用quoted character string(字符串常量?)初始化时,如果内容一样,就会指
向之
前创建过的String对象,而不是新建一个。如: String a="a"; String b="a";那此时
a,
b两个reference都是指向同一个对象。记得有人写过java编译会把这些字符串常量放进一
个pool里,每次加入新的时候都保证不重复创建同样内容的对象。
但前两天看TIJ 3rd上,p540说"if a program has several String objects that
conta
in identical character sequences, then those String objects ALL MAP to the
sam
e memory.这里没有区别String对象怎样创建。紧接着后面提到So it makes sense
that
the hashCOde()
avatar
j*g
2
1. 没错
2. 没错。字符串相等所以hashcode相等。
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。