java lambdaj 'variable_name' 无法解析为变量错误
java lambdaj 'variable_name' cannot be resolved to a variable error
我不熟悉 Java 8 个功能,这可能是一个愚蠢的问题,但我被困在了这一点上。
我正在尝试 运行 在 eclipse 中跟踪代码,但它给出了编译时错误。
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.function.Predicate;
import java.util.stream.Stream;
import ch.lambdaj.Lambda;
public class LambdajTest {
public static void main(String[] args) {
List list = new ArrayList();
list.add(1);
list.add(3);
list.add(8);
list.add(10);
list.add(16);
int sum = list.stream().filter(p -> p > 10).mapToInt(p -> p).sum();
}
}
错误是:- p 无法解析为变量。
我在类路径中添加了 lambdaj 2.3.3 jar。
请提供解决方案。
提前致谢。
问题是 JVM 不知道 p
是什么类型的对象,因为您正在使用原始集合。
改变
List list = new ArrayList();
至
List<Integer> list = new ArrayList<>();
JVM 现在知道它正在对 Integer
个对象的集合进行流式传输。
我不熟悉 Java 8 个功能,这可能是一个愚蠢的问题,但我被困在了这一点上。
我正在尝试 运行 在 eclipse 中跟踪代码,但它给出了编译时错误。
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.function.Predicate;
import java.util.stream.Stream;
import ch.lambdaj.Lambda;
public class LambdajTest {
public static void main(String[] args) {
List list = new ArrayList();
list.add(1);
list.add(3);
list.add(8);
list.add(10);
list.add(16);
int sum = list.stream().filter(p -> p > 10).mapToInt(p -> p).sum();
}
}
错误是:- p 无法解析为变量。 我在类路径中添加了 lambdaj 2.3.3 jar。
请提供解决方案。 提前致谢。
问题是 JVM 不知道 p
是什么类型的对象,因为您正在使用原始集合。
改变
List list = new ArrayList();
至
List<Integer> list = new ArrayList<>();
JVM 现在知道它正在对 Integer
个对象的集合进行流式传输。