Java toString() 没有打印正确的变量
Java toString() not printing the correct variable
我在 Java 中有这样一个 class:
public class Wrapper {
public static List<Type> list;
@Override
public String toString() {
return "List: " + this.list;
}
public static void main(String[] args) {
Wrapper w = new Wrapper();
System.out.println(w);
}
}
和这样的 class:
public class Type {
private static String name;
public Type(String n) {
this.name = n;
}
@Override
public String toString() {
return this.name;
}
}
我不是获取每个项目的名称,而是获取数组中每个项目的最后一个项目的名称。有什么建议吗?
在您的 Type
class 中,您将 name
标记为 static
,因此在打印 type.toString()
时,您始终只有一个值。
如果您想打印列表中的所有成员,请使用:
for(Type t : list){
System.out.print(t.toString());
}
@Override
public String toString() {
String s = "";
for(Type t : list) {
s += t;
}
return s;
}
我在 Java 中有这样一个 class:
public class Wrapper {
public static List<Type> list;
@Override
public String toString() {
return "List: " + this.list;
}
public static void main(String[] args) {
Wrapper w = new Wrapper();
System.out.println(w);
}
}
和这样的 class:
public class Type {
private static String name;
public Type(String n) {
this.name = n;
}
@Override
public String toString() {
return this.name;
}
}
我不是获取每个项目的名称,而是获取数组中每个项目的最后一个项目的名称。有什么建议吗?
在您的 Type
class 中,您将 name
标记为 static
,因此在打印 type.toString()
时,您始终只有一个值。
如果您想打印列表中的所有成员,请使用:
for(Type t : list){
System.out.print(t.toString());
}
@Override
public String toString() {
String s = "";
for(Type t : list) {
s += t;
}
return s;
}