我們假設爲項目編寫日曆。我正在使用一個數組來跟蹤一個月中有多少天,並獲得一個長度與數組索引值相等的數字列表。然後使用循環填充String,直到該循環等於該索引的值。初學Java - 使用子字符串()將長字符串分成單獨的行
字符串被加載到我們的教授給出的文本形狀中。我想顯示每個由substring()生成的文本行到一個單獨的行中。我試圖從更高的索引開始(30,59),但它返回一個錯誤b/c,我的初始字符串不夠長。
所以我想要做的是將長長的數字列表分成不同的行。我的一個同學說使用子串。它的確行得通,但只會給我第一行。
這是生成我的字符串的方法。
public String toString() {
monthPlusOne = month + 1;
for (int i = 0; i < monthsArray[monthPlusOne]; i++) {
String temp;
//temp = "" + i;
subLine = subLine + (i+1) + " ";
}
totalLine = subLine;
String output = monthText + " " + year + " \n "
+ "Su Mo Tu We Th Fr Sa\n" + totalLine;
return output;
}
其饋送到這個這個方法,其origanlly有與手動只是數形式砑光「\ n」個插入其中。當它發現那些 「\ n」
public static void displayCalendar() {
String s = calendar.toString().substring(30);
// extract all of the lines in s
// split s on \n
String[] lines = s.split("\n");
int index = 0;
for (String line : lines) {
t[index].setText(line);
index++;
}
}
嗨kitchen_duty ...你想要得到一個單一的字符串的子串,例如,如果你有字符串像「第一第二第三」,你想三個字符串「第一」,「第二」,「第三」....是你想要什麼...我讀你的問題,但無法理解它 – koool 2011-05-27 23:08:29
我知道你是一個初學者,但這個代碼幾乎無法理解。介意清理一下?對我來說,你讓這比自己需要的要困難得多。另外,請查看String的[split](http://download.oracle.com/javase/6/docs/api/java/lang/String.html#split%28java.lang.String%29)方法。 – mre 2011-05-27 23:11:13
我建議不要在這裏使用'substring'。沒有它可以設計得更乾淨。 – 2011-05-27 23:11:30