Java 我的用户输入数组的内容为';输入的是什么

Java 我的用户输入数组的内容为';输入的是什么,java,arrays,Java,Arrays,我的代码中有一个十点数组,是用户输入的 for (int i = 0; i < arraya.length; i++){ arraya[i] = scan.nextInt(); } for(int i=0;i

我的代码中有一个十点数组,是用户输入的

for (int i = 0; i < arraya.length; i++){
     arraya[i] = scan.nextInt();
}
for(int i=0;i
进入后

2,4,53,2,3,46,45,5,4,3

打印的数组已被读取

[I@86b012


如何修复此问题?

您可能正在像这样打印阵列

它在内部调用
arraya.toString()
并给出
[I@86b012

  • [I
    -是一个类名
  • [
    -一维数组
  • @
    -将字符串连接在一起
  • 86b012
    -对象的哈希代码

你必须这样做

for (int i = 0; i < arraya.length; i++){
     System.out.print(arraya[i]+" ");
}

每个java对象都有一个toString()方法,默认方法是显示对象的类名表示形式,然后是“@”后跟其哈希代码。您看到的是int数组的默认toString()表示形式。要打印数组中的实际数据,您可以:

System.out.println(java.util.Arrays.toString(arraya));

或者你可以像其他人建议的那样循环遍历数组

打印数组的代码在哪里?或者
System.out.println(Arrays.toString(arraya));
。数组无法解析?@GDaniels如果你是我回答中的第二个方法,别忘了导入java.util.Arrays;
“导入java.util.Arrays无法解析”我不确定这是为了什么,但我使用的是DrJava,并且project下没有构建路径。
System.out.println(java.util.Arrays.toString(arraya));