[英]new class with method toString()
這與我之前提出的問題有關。 我在類中添加了toString()方法。 該類使用整數堆棧創建任意長的自然數。 我只是增加和減少,所以堆棧似乎是個不錯的選擇。 無論如何,我從以下代碼中沒有得到任何輸出:
public String toString() {
String out_final = "", backwards = "", temp_str = "";
Integer temp_int = 0;
Character temp_char = ' ';
while(!number.empty()) {
temp_int = number.pop();
temp_str = temp_int.toString();
backwards.concat(temp_str);
}
while(backwards.length() > 0) {
temp_char = backwards.charAt(backwards.length() - 1);
temp_str = temp_char.toString();
out_final.concat(temp_str);
}
return out_final;
}
它由System.out.println(b4.toString());
調用System.out.println(b4.toString());
對象number
指的是我必須從堆棧末尾取走的Stack<Integer>
(顯然是反向的),然后再次反轉以正確打印。 無論如何,不要着急這一點,但總是能得到幫助!
字符串是不可變的:
backwards.concat(temp_str);
應該
backwards = backwards.concat(temp_str);
與out_final串聯相同。
或者,如果您的堆棧相當大,則StringBuilder可能對您有用並且可能更有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.