참조형 데이터의 값 ⇒ 힙 메모리 영역
변수에 대입되는 값 ⇒ 힙 메모리 영역의 주소
byte < short < int < long << float < double
객체 ⇒ 힙 메모리 영역
변수 ⇒ 힙 메모리 영역의 주소
리터럴: 값 자체
String hello = "안녕하세요"; // 스트링 리터럴
String hello = new String("안녕하세요"); // 생성자
→ 생성자를 이용하면 항상 공간이 새로 생성되지만, 리터럴은 값이 같으면 같은 공간에서 이용된다.
equals()
라는 함수를 사용하면 값 자체를 비교하게 된다.
StringBuilder
는 String 객체를 합쳐준다.
메모리 측면에서 효율적이다.
StringBuilder hello = new StringBuilder("hello, ");
hello.append("World!");
System.out.println(hello.toString());
String str = "이름: 박지민"
System.out.println(str.indexOf("이")); // 0
String name = str.subString(4, 8); // 박지민
소문자 → 대문자
대문자 → 소문자
→ 대소문자를 구분하지 않고 문자열 값을 비교한다.
trim()
String str = " Hello ";
str = str.trim();
replace()
String str = " Hel lo ";
str = str.trim();
str = str.replace(" ", "");