关于java中String类的问题
//请看如下代码:Stringstr1=newString("abc");Stringstr2=newString("abc");/*str1和str2不是指向了两个不同...
//请看如下代码:
String str1=new String ("abc");
String str2=new String ("abc");
/*str1和str2不是指向了两个不同的地址么?但是为什么输出str1.hashCode()和str2.hashCode(),
这两个哈希值却是一样的?我只知道哈希值不能完全代表对象的地址值,懂的帮我讲下原理,谢谢*/ 展开
String str1=new String ("abc");
String str2=new String ("abc");
/*str1和str2不是指向了两个不同的地址么?但是为什么输出str1.hashCode()和str2.hashCode(),
这两个哈希值却是一样的?我只知道哈希值不能完全代表对象的地址值,懂的帮我讲下原理,谢谢*/ 展开
10个回答
展开全部
HashCode的产生是根据值来产生的,与内存对应无关.所以相同的值会有相同的hashcode
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼主我占个位置,坐等高手解答!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看看源码就什么都明白啦。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询