打印Java数组,该怎么解决

转自:http://www.myexception.cn/j2se/176834.html

打印Java数组

比方说我有一个数组叫Array,里面存储了10个int型的数据,
我用System.out.print(Array)打印的时候,输出的不是我
原本存储在Array里面的数据,而是一堆莫名其妙的字符和数字,
各位,是不是java里面不能这么打印数组,而我打印的是我定义的
数组的地址?

------解决方案--------------------------------------------------------
System.out.print(java.util.Arrays.toString(Array)) 
------解决方案--------------------------------------------------------
for(int i : arraay){System.out.printf("%d ",i);}
System.out.println(); 
------解决方案--------------------------------------------------------
System.out.println打印的时候调用了数组的toString方法,方法实现参见Object#toString

探讨

谢谢你,我知道可以逐个打印,我就是想知道,我这么写为什么不对呢?

------解决方案--------------------------------------------------------
lz打印的是数组首地址,打印数组1L,2L的方法都行
java中可以给类重写一个toString()的方法,这样就可以按照lz设定的方式打印了,否则打印地址 
------解决方案--------------------------------------------------------
System.out.print(Array) 实际上执行的是System.out.print(Array.toString) 
------解决方案--------------------------------------------------------
探讨
引用:

System.out.print(Array) 实际上执行的是System.out.print(Array.toString)
那我这样写
代码1:
int[] a = {1,2,3};
String output = Arrays.toString(a);
System.out.println(output);

显示结果 [1,2,3]
……
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值