我試圖一次只顯示列表中的19個元素(以保持輸出在輸出區域的限制內)。我認爲目前的代碼只能一次顯示一行。從偏移列表中只顯示19個元素
List<String> lines = new ArrayList<String>(){
private static final long serialVersionUID = -3916568049983591216L;
{
add("Line 1");
add("Line 2");
add("Line 3");
add("Line 4");
add("Line 5");
add("Line 6");
add("Line 7");
add("Line 8");
add("Line 9");
add("Line 10");
add("Line 11");
add("Line 12");
add("Line 13");
add("Line 14");
add("Line 15");
add("Line 16");
add("Line 17");
add("Line 18");
add("Line 19");
add("Line 20");
}};
int page = 1;
boolean np = false;
StringBuilder help = new StringBuilder();
// Stuff to determine page
int startLine = 0;
if (page > 1) {
startLine = 19 * page;
}
for (int i = startLine; i < lines.size(); i++) {
String line = lines.get(i);
help.append(line);
help.append("\n");
if (i % 19 == 0) { // If 19th element break
if (lines.size() > i) // Set next page to true if there is still more elements to show
np = true;
break;
}
}
System.out.println(help.toString());
if (np)
System.out.println("There is a next page.");
哪個,而不是顯示第19行(因爲頁面是1)它顯示1行:
Line 1
There is a next page.
它可能讓你知道'0%19 == 0'是'true' – 4castle