18. Array (배열)
- 참조타입 (뭉탱이로 들고다니니까^^;)
- 선언 방법
[1] char[] arrayC = {'A','B','C'}
[2] char[] arrayC2 = new char[3]; // 타입의 초기값이 입력됨, 참조타입은 null이 입력됨
[3] char[] arrayC3 = new char[]{'A','B','C'}; // 자주 사용하지 않음
- String str = ""; 은 값이 없음
19. String Ⅱ
- String str1 = "Happy";
String str2 = "Happy";
String str3 = new String("Happy);
== : 기본타입 비교
equals() : 참조타입 비교
결과) Str1 == Str2 : True
Str1 == Str3 : False
[Stack] [heap]
r03 h03 -> h02 로 변경
str3 ─── "Happy" (r01) -> new를 통해 만들었으므로 String pool이 아닌 그냥 heap 영역에 만들어짐
(String pool) : 애초에 영역이 나뉘어 있음
str2 ─┐ "Happy"
str1 ─┴─ r01 h01 -> h02 로 변경 (스트링은 자신의 값으로 해시코드 변경 : 오버 라이딩)
- null : String이 레퍼런스에 연결되어있지 않은 상태
20. Shallow Copy (얕은 복사)
- 참조 타입에서 발생
- 주소 전달 (pass by reference, mutable)
- 주소를 전달하기 때문에 주소에 접근해서 값을 변경할 경우, 사용하고 있는 모든 변수의 값이 변경되어 적용된다
21. Switch
- switch~case 문 : 선택문 입력받은 값과 같은 값이 있는 경우 실행
fall throw : 작동
※ 반드시 break;
ex) 1.7 이상에서는 String 도 가능
API에는 정수만을 사용하라고 되어있음
- 정수만 비교 가능
- key와 벨류의 타입이 같아야 함
- break;가 없으면 아래 값이 모두 실행됨
'스터디 자료 준비 > JAVA' 카테고리의 다른 글
JAVA 스터디를 위한 키워드 26-28 (0) | 2022.04.22 |
---|---|
JAVA 스터디를 위한 키워드 22-25 (0) | 2022.04.12 |
JAVA 스터디를 위한 키워드 15-17 (0) | 2022.04.03 |
JAVA 스터디를 위한 키워드 11-14 (0) | 2022.03.16 |
JAVA 스터디를 위한 키워드 7-10 (1) | 2022.03.11 |
댓글