2016-04-21 77 views
0

我有一個方法TextIO.putf方法(它應該與System.out.printf具有相同的結果)有問題。Java TextIO.putf()方法

這是給我的問題代碼:

for (int columns = 0; columns < 3; columns++) { 
    for (int rows = 0; rows < 4; rows++) { 
     TextIO.putf("%5d", "-"); 
    } 
    TextIO.putln(); 
} 

當我運行應用程序,它給了我這個錯誤:

Exception in thread "main" java.lang.IllegalArgumentException: Illegal format string in TextIO.putf() method.

這是從決定「 - 」的一部分,因爲如果我在那裏放了別的東西(例如我試着用數字4),它會正確打印這個:

4 4 4 4 
4 4 4 4 
4 4 4 4 

我怎樣才能解決這個問題?爲什麼這給我錯誤的「 - 」而不是任何數字?我試圖在TextIO源代碼和互聯網上查找這個,我仍然不知道爲什麼(因爲putf方法的第二個變量應該是Object類型)。

感謝大家,這將幫助我!

回答

1

在%5d信號中,您要打印一個十進制數。

該表達式中的5表示該數字應該有5位數的長度,如果數字較短,則用空格填充該數字。

如果要打印字符串,請使用%s而不是%5d。