int, boolean, double 등
string a="hel";
string b="lo";
string c=a+b;
읭..? 내가 넣었던 hel, lo는 없어지지 않는다. 즉 불변이라는 것이다.
무분별하게 +,concat을 했다간 메모리효율이 떨어진다는 것을 알 수 있다.
그래서 String보다 StringBuffer, StringBuilder 사용을 추천한다. (바로 다음에서 설명하겠다 / 예고 : 동적할당임)
String, Object, Array 등 (String은 특이하게 heap의 스트링풀 영역에 담긴다.)
string a="hel";
string b="lo";
string c=a+b;
드디어 내 생각대로 되었다.
그림만 봐도 힙이 메모리 효율이 좋다는 것을 알 수 있다.
하지만 무조건적으로 힙이 좋다는 것은 아니다. 일을 혼자하는 것보다 둘이 하는게 효율적이듯, 스택과 힙 각 부분의 역할에 맞게 사용하면 효율을 극대화시킬 수 있다.
회사에서 작성하시다니 여유있어보이셔서 부럽습니다~