-1 java
所以我有一个字符串方法,我想打印一个带有选项卡的Arraylist
public String toString() {
return plate + " " + year + " " + mfg + " " + style + " " + color + "\\t";
}
Run Code Online (Sandbox Code Playgroud)
这是我打电话的地方
System.out.println(resultList.toString());
Run Code Online (Sandbox Code Playgroud)
我得到的结果都在一行中[ ].
使用"\t"不"\\t".后者输出一个字面,\然后是a t.
但是,这有点代码味道.您通常不应该像这样进行输出格式化toString(),对于您的简单用例可能没问题,但是如果您养成习惯,它可能会导致更大的应用程序出现问题和混淆.至少,请将选项卡视为UI的一部分,并将其保持在稍高的级别,例如:
for (Result r : resultList) {
System.out.println(r + "\t");
}
Run Code Online (Sandbox Code Playgroud)
更好的是,考虑在更高级别进行所有格式化,而不是在toString(),例如:
for (Result r : resultList) {
System.out.println(r.getPlate() + " " + r.getYear() + " " +
r.getMfg() + " " + r.getStyle() + " " +
r.getColor() + "\t");
}
Run Code Online (Sandbox Code Playgroud)
你的使用toString()肯定是方便的,可能对你的应用程序有意义,它本身并不是邪恶的,但只要知道你在做什么.通常(但肯定不总是),toString()用于调试,而不是复合对象的格式化.
| 归档时间: |
|
| 查看次数: |
95 次 |
| 最近记录: |