A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张玉建 中级黑马   /  2013-8-6 20:20  /  882 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

char[] arr= {'c','b','d','r'};
  String d= arr.toString();
  
  System.out.println(d);
无意写的,是错的的,但是代码编译通过了,
运行还出现这样
我就郁闷了,
那这个值是什么?
d 的地址值,当d为真正的指向一个对象,
arr字符数组的地址值,那 arr.toString();
(写着写着明白了!)
arr的地址值通过Object的toString();方法,把地址值指向了d了
所以打印出这样结果
是否是这样

好奇.jpg (3.31 KB, 下载次数: 9)

好奇.jpg

1 个回复

倒序浏览
toString在object中意外返回此对象的字符串表现形式,arr.toString其实是给d赋了一个地址值 ,所以打印的就是地址在计算中默认打印出来的哈希值
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马