Java中数组元素以toString()方法输出的问题,谁能帮帮我啊!

publicstaticvoidmain(String[]args){int[]array={1,2,3,4,5};System.out.println(array.to... public static void main(String[]args){
int[] array= {1,2,3,4,5};
System.out.println(array.toString());
}
//就以上这个简单的程序,结果为:[I@15db9742
请问为什么是上面这个结果?
我知道可以遍历数组元素,然后依次输出;可是我怎么记得C#中以toString()方法输出得到的结果就是12345呢?还是我记错了!
C#中也不是toString()直接就输出12345,是我记错了!
展开
 我来答
mj37yhyy
2015-01-14
知道答主
回答量:12
采纳率:0%
帮助的人:6.5万
展开全部
这个打的是内存地址了,想打12345,要重载toString方法的。这里可以用Arrays.toString(array)
。下面是api的解释:

toString
public String toString()

返回该对象的字符串表示。通常,toString 方法会返回一个“以文本方式表示”此对象的字符串。结果应是一个简明但易于读懂的信息表达式。建议所有子类都重写此方法。
Object 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于:
getClass().getName() + '@' + Integer.toHexString(hashCode())

返回:
该对象的字符串表示形式。

关于为什么会打印[,请看下面:

如果此类对象表示一个数组类,则名字的内部形式为:表示该数组嵌套深度的一个或多个 '[' 字符加元素类型名。元素类型名的编码如下:

Element Type

Encoding

boolean Z
byte B
char C
class or interface Lclassname;
double D
float F
int I
long J
short S
类或接口名 classname 是上面指定类的二进制名称。
示例:
String.class.getName()
returns "java.lang.String"
byte.class.getName()
returns "byte"
(new Object[3]).getClass().getName()
returns "[Ljava.lang.Object;"
(new int[3][4][5][6][7][8][9]).getClass().getName()
returns "[[[[[[[I"
cx8121453
2019-03-02
知道答主
回答量:1
采纳率:0%
帮助的人:748
展开全部
java和c语言不一样,c可以直接输出数组
java输出数组这里调用toString方法,如果数组中不是数字或者字符串,返回的是字符串[类型@哈希值]
可以使用Arrays.toString()方法来输出此类数组或者把这个数组作为参数创建一个对象再来输出。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
nuimeng1st
2015-01-14 · TA获得超过198个赞
知道小有建树答主
回答量:153
采纳率:100%
帮助的人:125万
展开全部
数组是对象,底层应该没有重写object的toString方法,
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}

要遍历数据用java.util.Arrays工具类
Arrays.toString(array)
得到结果
[1, 2, 3, 4, 5]
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友cbbd82d
2015-01-14
知道答主
回答量:5
采纳率:0%
帮助的人:3.1万
展开全部
array.join
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
夜色无边0001
2015-01-14 · TA获得超过127个赞
知道小有建树答主
回答量:108
采纳率:100%
帮助的人:41.4万
展开全部
这个是打印的是内存地址,数组就是的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式