java - StringBuffer转成String,可以不同过tostring,而是通过+“”的方式转换吗?
PHP中文网
PHP中文网 2017-04-18 10:46:23
0
1
710
PHP中文网
PHP中文网

认证高级PHP讲师

모든 응답(1)
Ty80

Sb는 본질적으로 StringBuffer 객체입니다. sb+""는 sb.toString()을 호출하여 ""로 연결합니다. 또한 StringBuffer는 스레드로부터 안전합니다. 그 이유는 Jdk의 String 클래스가 final 타입인데 왜 최종 수정 버전이 String str = s + ""; 형태로 존재할 수 있는 걸까요? jvm에서는 +가 실행될 때마다 임시 String 객체가 생성되고 String str = a + b가 실제로 표시됩니다. 그런데 스플라이싱할 문자열이 너무 많으면 많은 String 개체가 생성되므로 gc의 오버헤드가 증가하므로 이러한 빈번한 작업은 문자열 스플라이싱을 직접 사용하지 않고 StringBuilder 또는 StringBuffer를 사용합니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿