MWB :
나는 채우려는 HashMap<Long, Long>
자바 스트림을 사용. 그러나, 나는 바로 그것을 받고 있지 않다. 나는 누군가 캔의 도움을 바랍니다.
나는이 라인을 따라 생각하고 있었다 :
HashMap<Long, Long> mapLongs = LongStream
.rangeClosed(1, 10)
.collect(Collectors.toMap(x -> x, x -> getSquare(x)));
어디에 getSquare
있는 광장, 예를 반환하는 간단한 기능 :
long getSquare(long x) {
return x * x;
}
그러나, 나는 없다는 오류가 getSquare()
개체에 적용 할 수 없습니다. 내가 개체에 캐스팅 X하려고 할 때 오류가 발생합니다 :
아니오 예 형 변수 (들)은 A, K, T는 U 정도로 존재하는 콜렉터> 공급자에 따르는 것으로
결론 : 나는 붙어입니다.
또한 (분명히), I 광장 값으로지도를 채우는 것보다 더 복잡한 일을하려고 ...
또한 :
그냥 스트림이 있는지 확인하십시오 boxed
.
Map<Long, Long> mapLongs = LongStream // programming to interface 'Map'
.rangeClosed(1, 10)
.boxed()
.collect(Collectors.toMap(x -> x, x -> getSquare(x))); // can use method reference as well