0
Java SDK 7이 설치되어 있고 Eclipse 3.7.1 Indigo를 사용하고 있습니다.Eclipse 3.7.1에서 Java 7 클로저 구문 사용
새 Java 7 구문을 사용하여 HashMap을 정의 할 때 제대로 작동합니다.
HashMap<Integer, Integer> hashMap = new HashMap<>();
하지만 클로저 구문을 사용하려고하면 이클립스에서 컴파일 오류가 발생합니다. 이것은 내가 컴파일하려고하는 것입니다.
public static <T> Collection<T> select(Collection<T> source,
{T=>Boolean} predicate) {
Collection<T> result = new ArrayList<T>();
for (T o : source) {
if (predicate.invoke(o)) {
result.add(o);
}
}
return result;
}
구문이 잘못 되었습니까? 또는 나는 그것을 잘못하고 있냐? 그것은 이 자바 7이 될 것이라고을 희망 그것이 자바 8.
위한 계획 기능, 그러나 그것은 상처를 만들지 않았다 -
또한 구문이 잘못되었습니다. 형식 매개 변수의 구문은 '술어 술어'일 뿐이며 술어의 사용은 호출 사이트의 실제 매개 변수 인 if (predicate.test (o))와 people이라는 전화 번호 이됩니다. 컬렉션은'select (people, p -> p.isHappy() && p.isSinging());와 같을 것이다. –