JEP 218: Generics over Primitive Types
JAVA2019. 12. 10. 19:23
이전에
List list = new ArrayList<>();
list.add(3);
int val = list.get(0);
에 대한 질문을 본적이 있습니다.
현재(지금까지 접했던)까지의 Java는 Generic에 primitive인 가 아닌 로 적어야 맞는것
그리고 list.add(3); 에서 auto-boxing 에 대해 언급했었습니다.
그리고 int val = list.get(0); 에서는 un-boxing이 일어나게 되죠
즉, 불필요한 객체가 생성되고 사라집니다.
검색을 하다보니 이부분을 "어쩔수 없다"가 아닌 해결해보려는 프로젝트가 있었습니다.
Valhalla 프로젝트
Valhalla 프로젝트에서는 크게 2가지 내용이 있었습니다.(https://openjdk.java.net/projects/valhalla/)
- Value Types
- Generic Spcialization(JEP 218)
그중 Generic Spcialization(JEP 218) 가 Generics over Primitive Types 에 다루고 있는 항목이였습니다.
https://openjdk.java.net/jeps/218
JEP(JDK Enhancement Proposal) 내용이기 때문에 언제 이루어질지 알수 없지만
하나씩 하나씩 추가되고 개선될때마다, 코틀린이나 스칼라가 아닌 자바
그 자체로 간편하고 더더욱 효율적인 언어가 될것을 기대한다.
'JAVA' 카테고리의 다른 글
SortedQueue... (0) | 2020.07.02 |
---|---|
java.util.function 인터페이스 (0) | 2019.12.30 |
[CompletableFuture][#3] 메소드 정리-1 (0) | 2019.09.01 |
[Quartz] Trigger (0) | 2019.07.10 |
[CompletableFuture][#2] staticMethod (0) | 2019.07.09 |
댓글()