繁体   English   中英

如何将列表值与 java 8 中另一个列表的索引值进行比较?

[英]How to compare the List values with index values of another list in java 8?

我需要使用 Java 8 根据list1的索引将两个列表( list1list2 )与list2的值进行比较。我尝试了下面的 for 循环。 这是工作。 但我需要有效地使用 Java 8。

List<String> list1= new ArrayList<String>();
list1.add("A");
list1.add("B");
list1.add("C");
list1.add("D");
list1.add("E");
list1.add("F");

List<Integer> list2= new ArrayList<Integer>();
list2.add(0);
list2.add(5);

  for(int i = 0; i < list1.size();i++)
  {
     for(int j = 0 ; j < list2.size(); j++)
      {
          if(i == list2.get(j)) 
          {
              System.out.println(list1.get(i));
          }
      }
  }

看起来你所拥有的只是 list2 上的索引。 我想知道为什么两个列表都需要迭代器。 为什么不在索引 list2 上迭代并在 list1 上执行get()

list2.stream().filter(i -> i < list1.size()).forEach(i -> System.out.println(list1.get(i)));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM