gpt4 book ai didi

java - 为什么我的 getter 应该返回对象数组时却返回 [LSubmarine;@27c170f0

转载 作者:行者123 更新时间:2023-12-02 08:52:55 24 4
gpt4 key购买 nike

我正在尝试创建一个名为 ShipStorage 的类它将潜艇类的对象存储在潜艇类类型的数组中。当我使用阵列潜艇的 getter 和 setter 时,它会打印 [LSubmarineClass;@27c170f0 。有人可以解释一下这里发生了什么以及我做错了什么吗?

class ShipStorage
{
private Submarine[] submarine;

public ShipStorage()
{
submarine = new Submarine[30];
submarine[0] = new Submarine();

}

public void setSubmarine(Submarine[] inSubmarine)
{
submarine = inSubmarine;
}

public Submarine[] getSubmarine()
{
return submarine;
}
}
public class Test
{
public static void main(String[] args)
{
Submarine[] submarine = new Submarine[2];
submarine[0] = new Submarine();
submarine[1] = new Submarine(100.999, 1960, Submarine.TITAN, -242.53);

ShipStorage store = new ShipStorage();
store.setSubmarine(submarine);
System.out.println(store.getSubmarine());
}
}

最佳答案

确实返回一个数组,但要正确打印它,您需要格式化输出:

System.out.println(Arrays.toString(store.getSubmarine()));

关于java - 为什么我的 getter 应该返回对象数组时却返回 [LSubmarine;@27c170f0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60671277/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com