0
這是我的原始代碼,用於打印輸入到程序中的信息,它被設計用來創建一個可以在左邊顯示導師名字的好小桌子,右邊是他們的薪水,底部的所有薪水總額爲:如何在JOptionPane中打印一組for循環數組?
System.out.println("Tutor Stipend Report");
System.out.println("Tutors\t\tPay");
System.out.println("------\t\t---");
for(int out=0;out<numOfTutors;out++) {
System.out.println(names[out]+"\t\t"+stipend[out]);
}
System.out.println("--------");
System.out.println("Total: " +sum);
現在我需要把這個代碼顯示在JOptionPane
這裏是我卡住的地方。我想保持與之前相同的表格設置,但每次我要顯示信息時,可以說我需要顯示3位導師,它只會提供3 JOptionPane
對話框,而不是在一個對話框中打印3位導師。
我意識到這個問題是因爲所有的信息都在for循環中,但是我該如何解決這個問題,這樣我才能顯示指定數量的導師並在一個對話框上付費,就像我在System.out.println
解決方案中一樣?
for (int out=0;out<numOfTutors;out++) {
JOptionPane.showMessageDialog(null,
"Tutor Stipend Report" +
"\nTutors Pay" +
"\n--------- -----" +
"\n"+names[out]+" "+stipend[out] +
"\n--------" +
"\nTotal: " +sum);
}
+1解決方案很好,就像旁註一樣,您還可以將文本包裝在''標籤中,並使用HTML格式(例如'
此解決方案非常完美,謝謝你這麼多,我從來沒有聽說過StringBuilder,但它是一個很好的解決方案。 – 2013-04-09 23:48:18
的問題是,因爲你調用
JOptionPane.showMessageDialog
內循環,將執行3次。你應該做的,而不是爲串聯要打印成一個字符串對象像這樣的字符串:注意,使用cocatenating字符串+ =不是做最有效的事情 - 考慮使用StringBuilder的/ StringBuffer的
來源
2013-04-09 23:42:18 gerrytan
感謝您的回覆,我最終用StringBuilder從前一位用戶告訴我的內容開始,再次感謝您。 – 2013-04-09 23:49:28
相關問題