我是Java的新手,正在尝试学习构造函数的概念。我尝试在main方法中打印出arrayOfInts的值(用于测试构造函数是否按照我预期的方式初始化)
System.out.println(ds.arrayOfInts);
但是,输出不是打印出值,而是输出:
[I@15db9742
为什么我得错了结果以及如何打印出正确的结果? (即存储在arrayOfInts中的值)。
public class DataStructure {
public static void main(String[] args) {
DataStructure ds = new DataStructure();
//System.out.println(ds.arrayOfInts); Doesnt work as expected
}
private final static int SIZE = 15;
private int[] arrayOfInts = new int[SIZE];
public DataStructure() {
int arrayValue = 0;
for (int i = 0; i < SIZE; i++) {
arrayOfInts[i] = ++arrayValue;
}
}
}
答案 0 :(得分:2)
您正在尝试打印数组。数组是一个对象。
为了正确显示它,您可以循环显示它,或使用Arrays.toString()方法:
System.out.println(Arrays.toString(ds.arrayOfInts));
返回指定数组的字符串表示形式。
答案 1 :(得分:1)
数组是java中的对象。您需要迭代元素并打印它们。以下是使用for-each
循环的示例实现。
public void print() {
for (int x : arrayOfInts) {
System.out.println(x);
}
}