1

我构建了一个小例子来测试java 8。有一个字符串列表:

List<String> list = Arrays.asList(new String[] { "Sheep", "Ship","Skeleton" });

以下功能:

list.stream().forEach(name -> list.forEach(name2->System.out.println("Name2:"+name2+" name:" + name + "=>" + name2.compareTo(name))));

返回 name2 和 name1 之间的比较。

我正在尝试测试,但我不知道这种情况是否可行:拥有相同的列表和一个独立的 String 变量lastFoundWord ,我可以在比较之后立即使用“lambda 方式”分配变量,就像之前的情况一样线 ?

注意:我看到 forEach 不能接​​受消费者列表,并且消费者构建非常严格。我不确定“功能”界面。我所有的想法都指示我重复两次相同的信息。

是否有一个接受消费者列表的 forEach 函数而我错过了它?

4

1 回答 1

1

我试图从列表中使用消费者。

尽管对于我当前的示例,我找到了使用大括号的解决方案。所以代码变成了:

list.stream().forEach(name -> list.forEach(name2 -> {
    System.out.println("Name2:" + name2 + " name:" + name + "=>" + name2.compareTo(name));
    lastName = name2;
}));
于 2015-05-08T07:04:02.657 回答