我已经创建了几个自定义类的对象,并为它们分配了不同的属性。然后,我将这些对象中的每个对象添加到一个向量中,但是当我尝试输出向量的元素时,我得到的只是对对象的引用,而不是对象属性。
发布于 2012-10-10 18:03:01
打印任何类的实例时,都会调用Object类的toString()方法。
您需要覆盖Custom类中的toString方法,并打印所需的属性。然后,将调用您的toString()方法,而不是Object's toString。
或者,您可以有一个getter方法,并在每个
public class Custom {
private String attr;
public String getAttr() {
return this.attr;
}
@Override
public String toString() {
return attr;
}
}然后,当您打印实例时,将调用toString(),并打印attr值。
Vector<Custom> yourVector = ...;
for (Custom val: yourVector) {
System.out.println(val); // Will invoke `toString()` and print attr value.
System.out.println(val.getAttr()); // Prints attr value
}https://stackoverflow.com/questions/12816660
复制相似问题