오늘은 String과 StringBuilder에 대해 알아보고자 합니다. String 클래스에서 메서드 중 하나를 사용할 때마다 메모리에 새 문자열 개체가 생성되므로, 새 개체에 대한 공간을 새로 할당해야 합니다. 이는 한번 값이 정해진 뒤 수정할 수 없기 때문입니다. 그럼 왜 string이 변경 불가능하게 설계가 되었을까요?찾은 자료를 요약하자면 다음과 같습니다. 1 . 같은 값을 가진 여러 문자열 변수를 가지고 있다면 같은 문자열 값에 대한 메모리를 여러 번 할당하지 않아도 된다. 2. 멀티스레드 애플리케이션에서 경쟁 조건을 제거하여 빠르게 변경할 수 있다. 3. 해시테이블에서 문자열을 키로 잘 적용하기 위해서이다. -> 해시 값이 계산되는 객체는 해시 값이 시간에 따라 일정하도록 보장하기 ..