需求:陣列/集合輸出時,每行固定 5 個數,超過換行。
int[] nums = {1,2,3,4,5,6,7,8,9,10,11};
int perLine = 5;
for (int i = 0; i < nums.length; i++) {
System.out.printf("%4d", nums[i]); // 格式化對齊
if ((i + 1) % perLine == 0) System.out.println();
}
if (nums.length % perLine != 0) System.out.println(); // 末行補換行
1 2 3 4 5
6 7 8 9 10
11
public static void printPerLine(Collection coll, int perLine, String format) {
int i = 0;
for (T t : coll) {
System.out.printf(format, t);
if (++i % perLine == 0) System.out.println();
}
if (i % perLine != 0) System.out.println();
}
調用:`printPerLine(Arrays.asList(nums), 5, "%4d");`
結論:**手動計數取模最直接、效能最好,無需第三方庫。**