Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 자바스크립트
- webstorm
- java.util.LinkedHashMap cannot be cast
- JetBrains
- spring security
- you don't know js
- nodeJS
- Spring
- Effective Java
- Intellij
- java
- javascript 기초
- effectivejava
- spring batch #스프링 배치 #스프링 배치 중복 실행
- 자바
- javascript type
- 이펙티브자바
- javascript value
- webpack
- ECMA2015
- javascript 값
- CAS
- javascript
- javascript native
- Babel
- ES6
- requestbody
- Spring Session
- 이펙티브 자바
- Redis
Archives
- Today
- Total
귀찮지만 만들어보자
이펙티브 자바 - 람다와 스트림(2) 본문
람다보다는 메서드 참조(method reference)를 사용하라
일반적으로 사용하는 람다보다 더 간결하게 만드는 방법이다
- 예시
map.merge(key, 1, (count, inc) -> count + incr);
map.merge(key, 1, Integer::sum);
이런식으로 더욱 간결하게 사용할 수 있다. 인텔리제이에서 다 만들어주더라 다른 IDE도 되겠지..?
하지만 무조건적으로 간결해지는 것은 아니다.
- 예시
service.execute(GoshThisClassNameIsHumongous::action);
service.execute(() -> action());
이럴 경우에는 람다보다 메서드 참조가 더욱 알아먹기 어렵다.. 그러니까 적절하게 선택해서 사용하자.
람다로도는 불가능하지만 메서드 참조로는 가능한 유일한 예는 제네릭 함수 타입 구현이다. 이게뭐여
'이펙티브 자바' 카테고리의 다른 글
이펙티브 자바 - 람다와 스트림(6) (0) | 2019.01.19 |
---|---|
이펙티브 자바 - 람다와 스트림(5) (0) | 2019.01.19 |
이펙티브 자바 - 람다와 스트림(4) (0) | 2019.01.13 |
이펙티브 자바 - 람다와 스트림(3) (0) | 2019.01.13 |
이펙티브 자바 - 람다와 스트림(1) (0) | 2018.12.29 |