System.out.println()正在打印[S@1237772c4,而不是实际字符串



我有以下代码:

public static void closestInSubnet(int[][] adjlist, short[][] addrs, int src, short[][] queries) {
// TODO

List<String> address = ToList(addrs);
List<String> quer = ToList(queries);

for (String i : address) {
System.out.println(i);
}

}
public static List<String> ToList(short[][] preList) {
List<String> list = new ArrayList<String>();

for (short[] i : preList) {
list.add(i.toString());
}
return list;
}

我希望它打印出转换为字符串的列表,但我在控制台中得到了以下内容:

[S@7637f22
[S@4926097b
[S@762efe5d
[S@5d22bbb7
[S@41a4555e
[S@3830f1c0
[S@39ed3c8d
[S@71dac704
[S@123772c4

我相信有一个快速的解决办法,任何帮助都将是伟大的。感谢

您创建了一个数组列表。您现在正在循环浏览列表,并尝试一次性打印列表。您看到的是数组的对象ID。

您需要添加一个内部循环来打印每个数组的各个元素。

最新更新