Java数组分隔成子数组
Posted skiwnchqhh
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java数组分隔成子数组相关的知识,希望对你有一定的参考价值。
有这样一个需求,循环数组输出动态表单为一行两列
分隔数组每两个为一组,如果单数最后一个为一组
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数组分隔成子数组的主要内容,如果未能解决你的问题,请参考以下文章
如何使用分隔符数组在 Java 中使用多个分隔符拆分字符串? [复制]