2014-04-07 32 views
0

我期待傳遞一個字符串的ToString)的結果(方法的一個長長的清單,這是我的代碼如何插入一個字符串toString()方法的循環在Java中

public void newlist(){ 
    for(int i = 0 ; i <= nbComposant;i++){ 
     System.out.print(ref+i+" (quantity "+quantity+i+")"); 
    } 
} 

public String toString(){ 
    return newlist(); 
} 

有什麼不妥的地方?

+0

你的newlist()方法的返回類型是'void'。應該是字符串。 – donfuxx

+4

爲什麼'newList'單獨的方法?還有它爲什麼不返回任何東西(它的返回類型是'void')? – Pshemo

+0

'ref'和'quantity'數組?你打算在單獨的行上打印這些數組的每個元素嗎? –

回答

1
public String newlist(){ 
    StringBuilder sb = new StringBuilder(); 
    for(int i = 0 ; i <= nbComposant;i++){ 
     sb.append(ref+i+" (quantity "+quantity+i+")"); 
    } 
    return sb.toString(); 
} 
public String toString(){ 
    return newlist(); 
} 
+2

現在'newlist'沒有返回'String' ... – fonkap

+0

換行符是怎麼回事? –

+0

你是否嘗試用'+ quantity + i +'迭代一個數組。 –

3
public String toString(){ 
     StringBuilder builder = new StringBuilder(256); 
     for(int i = 0 ; i <= nbComposant;i++){ 
      builder.append(ref).append(i).append(" (quantity ").append((quantity+i)).append(")"); 
     } 
     return builder.toString(); 
} 

你不需要爲這個單獨的方法。使用Stringbuilder而不是「+」。儘管最近的JVM轉換爲Stringbuilder,但編寫它會是一個好習慣。

我不知道你的例外結果字符串是什麼。我剛剛從你的問題中複製過來。

+0

好的,再次感謝親愛的瑪尼 – NadNet

+0

@NadNet歡迎。 – Mani

相關問題