我有一个类定义如下:
public class Person {
private String name;
// constructor and getter/setter omitted
}
Run Code Online (Sandbox Code Playgroud)
我试图打印我的班级实例:
System.out.println(myPerson);
Run Code Online (Sandbox Code Playgroud)
但我得到了以下输出:com.foo.Person@2f92e0f4.
当我尝试打印一个Person对象数组时发生了类似的事情:
Person[] people = //...
System.out.println(people);
Run Code Online (Sandbox Code Playgroud)
我得到了输出: [Lcom.foo.Person;@28a418fc
这个输出是什么意思?如何更改此输出以使其包含我的人名?我如何打印我的对象集合?
注意:这是关于此主题的规范问答.
我有一个字符串数组,其中包含我定义的四个元素.我怎么打字System.out.println(name of Array),它不输出元素?但反而给了我一个奇怪的输出.
这是我的代码......
public class GeniusTrial {
public static void main(String[]args) {
String [] genius = {"Einstein, ", "Newton, ", "Copernicus, ", "Kepler."};
System.out.print(genius);
}
}
Run Code Online (Sandbox Code Playgroud)
这是我得到的输出:
[Ljava.lang.String;@3e25a5
Run Code Online (Sandbox Code Playgroud) 可能重复:
在Java中打印数组的最简单方法
我怎么打印阵列?我正在尝试尝试一些方法,而我继续得到的只是垃圾值.我试图导入数组库 - 仍然无法正常工作.
int []x = {1, 2, 3, 4, 5};
int []y;
y = x.clone();
System.out.println(x);
System.out.println(y);
Run Code Online (Sandbox Code Playgroud)