기본타입 : 저장되는 값: 값자체
참조타입 : 저장되는 값: 메모리 주소
자바는 문자열 리터럴이 동일하다면 String 객체 (힙 영역의) 를 공유함.
단 new 연산자를 이용하여 String객체를 생성하면 공유한다고 장담하지 못함
String name1= "name"; -> 0x00001
String name2= "name"; -> 0x00001
name1 == name2 ; // true
String name3= "newName" -> 0x0002
String name4 = new String("newName") ; -> != 0x0002
name3 == name4 ; // false
String methods
char charAt(int index);
int length()
String replace(oldString, replaceString)
String substring(int beginIndex, [int endIndex]);
int indexOf(findString);
boolean contains(findString)
String[] split(splitString)
String[] oldStrArr = {"java", "array", "copy"};
String[] newStrArr = new String[5];
// System.arrayCopy(원본배열 , 원본 배열 복사 시작 인덱스, 새 배열, 새 배열 붙여넣기 인덱스, 복사 항목 수)
System.arrayCopy(oldStrArr, 0, newStrArr, 0 , oldStrArr.length);
// 190