1. 程式人生 > >Java數組分隔成子數組

Java數組分隔成子數組

ring key color length ubi count main sys con

有這樣一個需求,循環數組輸出動態表單為一行兩列
分隔數組每兩個為一組,如果單數最後一個為一組
技術分享圖片

import java.util.ArrayList;
import java.util.List;

public class SplitArray {
    public static void main(String[] args) {
        String ary[] = { "a", "b", "c", "d", "e" }; // 分隔的數組
        int splitSize = 2; // 分隔的大小

        Object subAry[] = splitAry(ary, splitSize);
        for
(Object obj : subAry) { String subItem[] = (String[]) obj; for (int i = 0; i < subItem.length; i++) { System.out.print(subItem[i] + ","); } System.out.println(); } } /** * 比如 { "a", "b", "c", "d", "e" } * 分隔成 * a, b * c, d * e */
private static Object[] splitAry(String ary[], int subSize) { int count = ary.length % subSize == 0 ? ary.length / subSize : ary.length / subSize + 1; List<List<String>> subAryList = new ArrayList<List<String>>(); for (int i = 0; i < count; i++) { int
index = i * subSize; List<String> list = new ArrayList<String>(); int j = 0; while (j < subSize && index < ary.length) { list.add(ary[index++]); j++; } subAryList.add(list); } // 將List<List<String>> 封裝為 Object[],也可以不需要 Object[] subAry = new Object[subAryList.size()]; for (int i = 0; i < subAryList.size(); i++) { List<String> subList = subAryList.get(i); String[] subAryItem = new String[subList.size()]; for (int j = 0; j < subList.size(); j++) { subAryItem[j] = subList.get(j); } subAry[i] = subAryItem; } return subAry; } }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54

作者:itmyhome

再分享一下我老師大神的人工智能教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智能的隊伍中來!https://blog.csdn.net/jiangjunshow

Java數組分隔成子數組