java - arraylist 部分到 3 个字符串部分

标签 java arraylist

我正在尝试将大小为 3narrayList 拆分为 3 部分(每个部分的大小为 n),
但我只得到第一个一。我该如何解决这个问题?

[1,2,3,4,5,6,7,8,9]  ==> [1,2,3][4,5,6][7,8,9]

感谢任何帮助。

List<RootCreator> mainSublist = new ArrayList<RootCreator>();
int number = mainList.size()/3;
for(int i= 0 ; i < mainList.size()/3; i++){
    int index = i*3 ;           
    List<RootCreator> sublist =  mainList.subList(0, index);
    mainSublist.addAll(sublist);
}

最佳答案

您可以使用subList(int fromIndex,int toIndex)像这样 -

static <T> List<List<T>> split(List<T> list, int n) {

    List<List<T>> parts = new ArrayList<List<T>>();
    int size = list.size();

    for (int index = 0; index < size; index += n) {
        parts.add(new ArrayList<T>(
            list.subList(index, Math.min(size, index + n)))
        );
    }
    return parts;
}

关于java - arraylist 部分到 3 个字符串部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30798006/

相关文章:

java - Google map 不显示在 fragment 中

java - 设置 Java AWS Lambda VM 参数

java - (Java String.format) 无法将此列设置为固定宽度

java - ArrayList在添加时是否使用添加对象的hashCode方法

java - klazz 类的数组列表(反射 Api)

java - 在ArrayList的ArrayList中,如何在更新内部数组时保留父数组列表中的值?

java - 在 Java 中的 Hashmap 中使用过去的数据和 ArrayList 的当前数据

java - 我们可以在移动到android中的下一次迭代之前制作一个for循环以在每次迭代中获取用户输入吗

java - Java 程序基准测试

JAVA 读取数值数据并存储到数组列表