[英]Arrays toString with objects that also have a toString method
我在打印特殊數組時遇到問題:
我使用System.out.println(Arrays.toString());
打印一個包含多個對象的數組System.out.println(Arrays.toString());
但是現在數組中充滿了對象,這些對象具有char值,我想打印分配給該對象的每個char。 如何在代碼中做到這一點?
為了明確起見,讓數組像下面這樣具體:
Class[] objList = {new Class(1, 'X'), new Class(4, 'Y')};
我要在其中調用objList[0].toString()
然后再調用objList[1].toString()
方法的地方,得到的輸出類似於:
[X, Y]
我希望這個問題很清楚,如果有人可以幫助我,我將很高興,謝謝!
注意 :帶有toString()方法的上述類僅在該類中實現,並且被寫為System.out.print(destination);
我在這里嘗試了以下解釋: 在對象數組上使用toString ,但顯然沒有用。
public String toString() {
System.out.print(Arrays.toString(objList.toString()));
return null;
}
一個toString()
方法本身不應該打印任何東西。 相反,它應該返回代表對象的字符串。 如果類的字符是通過getChar()
方法獲得的,則可以按以下方式實現其toString()
方法:
public String toString() {
return String.valueOf(getChar());
}
這會將字符轉換為String
並返回它。
如果這樣做,代碼
Class[] objList = new Class[] { new Class(1,'X'), new Class(2,'Y') };
System.out.println(Arrays.toString(objList));
應該輸出[X, Y]
。
(我建議將您的類Class
重命名為其他名稱,因為它與Java的Class<T>
類沖突。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.