【发布时间】:2018-11-28 17:44:46
【问题描述】:
我有一个整数列表,例如 list1=(1,2,3) 和 list2 = (0,1)。
我的列表包含 list1 和 list2。它可以包含更多,但对于示例,我只列出了两个列表。
问题是使用java流获取最小大小的列表的索引。
这是我的程序,它只使用 for 循环方法。
import java.util.ArrayList;
public class Example {
public static void main( String[] args ) {
ArrayList<Integer> list1 = new ArrayList<>();
list1.add(1);list1.add(2);list1.add(3);
ArrayList<Integer> list2 = new ArrayList<>();
list2.add(0);list2.add(1);
ArrayList<ArrayList<Integer>> listOLists = new ArrayList<>();
listOLists.add(list1);
listOLists.add(list2);
printTheIndexOfTheListWithTheMinSize(listOLists);
}
private static void printTheIndexOfTheListWithTheMinSize( ArrayList<ArrayList<Integer>> listOLists ) {
int minSize = listOLists.get(0).size();
int minIndex = 0;
int i=0;
for ( ArrayList<Integer> list: listOLists ) {
if (list.size()<minSize)
{
minSize = list.size();
minIndex=i;
}
i++;
}
System.out.println(minIndex);
}
}
您能否给我一个提示,如何使用 Java 流 API 做到这一点。
请注意,我在繁重的计算中多次调用此方法,因此 awnser 应考虑到这一点。
【问题讨论】:
-
在
list2被声明和初始化之后,没有任何元素被添加到其中。在下一行中,0和1被添加到list1。错字?
标签: java collections java-stream