我想使用 java 程序根据输入值动态地将字符串列表拆分为多个列表。
例如。 如果我有下面的字符串列表
List<String> messages = Arrays.asList("Hello", "World!", "How", "Are", "You");
如果我输入 2 作为输入值,我必须将字符串列表拆分为多个列表,每个拆分列表应包含 2 个值。
注意:列表应该包含多少个值取决于输入值
outputshould be:
list1 contains-> Hello,world
list2 contains -> How,Are
list3 contains -> you
最佳答案
另一个答案表明 List.subList() 是最简单的方法。我将使用 Math.min 来涵盖最后一个分区案例。
int partitionSize = 2;
List<List<String>> partitions = new LinkedList<List<String>>();
for (int i = 0; i < messages.size(); i += partitionSize) {
partitions.add(messages.subList(i,
i + Math.min(partitionSize, messages.size() - i)));
}
关于java - 如何在java中动态地将字符串列表拆分为多个列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12172570/