문서의 이전 판입니다!
Set.of
, List.of
, Map.of
null
값을 넣을 수 없게 방어해준다.Set
,Map
은 중복값을 넣는 경우에도 오류를 발생시켜 방어해준다.Collections.unmodifiableXxx
unmodifiable
컬렉션에 이 값이 반영된다. 즉, 완벽한 immutable 이 아니다.String
은 char []
로 표현되고 char
는 UTF-16 으로 2byte 를 차지했다. byte[]
로 저장하여 1byte 단위로 공간을 차지하게 최적화 하였다.Latin-1
문자로 이루어진 경우에는 coder
라는 String
의 내부 변수를 LATIN1
으로 설정하여 1 바이트 단위로 읽고UTF-16
일 경우에는 coder
값을 UTF_16
으로 설정하고 2 바이트 단위로 읽는다. StringBuilder
와 StringBuffer
에도 최적화가 반영되어있다.Java 에서 문자열을 연결할 때는 StringBuilder 를 사용해야 한다 → JDK 9 부터는 그냥 + 연산으로 연결하는게 제일 빠르다.
“+ is no longer compiled to StringBuilder.” In their “Lessons from Today” slide, they state, “Use + instead of StringBuilder where possible” and “recompile classes for Java 9+.”
ISO-8859-1
로 명시하고자 한다면java.util.PropertyResourceBundle.encoding=ISO-8859-1