반응형
* 본 게시물은 이지스퍼블리싱 [Do it! 점프 투 자바] 서평단 미션 수행 및 학습 목적으로 작성하였습니다.
모든 내용, 디자인, 이미지, 편집 구성의 저작권은 이지스퍼블리싱(주)와 지은이에게 있으며
학습 목적으로 내용을 재구성하여 작성했음을 밝힙니다. 문제시 삭제하도록 하겠습니다.
맵
맵은 리스트나 배열처럼 순차적으로(Sequential) 요솟값을 구하지 않고
키(key)를 이용해 값(value)을 얻는다.
put | key와 value를 추가한다. |
get | key에 해당하는 value를 얻을 때 사용한다. |
containsKey | 맵에 해당 key가 있는지 true, false로 return |
remove | 해당 key의 항목을 삭제한 후 value 값을 return |
size() | 맵 요소의 갯수를 return |
keySet() | 모든 key를 모아 집합 자료형으로 return (리스트 자료형으로 바꿔서도 사용 가능)
|
HashMap<String, String> map = new HashMap<>();
map.put("people", "사람");
map.put("animal", "동물");
HashMap 또한 마찬가지로 제네릭스를 사용하는데 key, value 모두 String 이외의 자료형은 사용할 수 없다.
System.out.println(map.get("people")); // "사람" 출력
맵의 key에 해당하는 value가 없을 때 get 메서드를 사용할 경우엔 null이 return 된다.
Enum
- 매직 넘버를 사용할 때보다 코드가 명확하다.
(매직 넘버란, 프로그래밍에서 상수로 선언하지 않고 사용하는 숫자를 의미) - 잘못된 값을 사용해 생길 수 있는 오류를 막을 수 있다.
- 한정된 값을 갖는 타입을 열거 타입이라고 한다.
- 값을 변경할 수 없는 것을 상수라고 한다.
(대문자로 작성하는 것이 관례)
// 같은 패키지 내 .Enum 생성
public enum Week { // 열거 타입 이름 [Week]
MONDAY,
TUESDAY,
WEDNEDAY,
THURSDAY,
FRIDAY,
SATURDAY,
SUNDAY // 열거 상수 목록 (한정된 값 목록 '요일')
}
public static void main(String[] args) {
// 열거 타입 변수를 선언
Week today = null; // 열거 타입은 참조타입 (null 대입 가능)
// 열거값 대입
today = Week.THURSDAY; // 무조건 열거 타입의 값을 사용
// 열거값을 비교
if(today == Week.FRIDAY) {
System.out.println("오늘은 금요일이 아닙니다.");
} else {
System.out.println("불금 불금 불금.");
}
// Week 변수값이 SUNDAY인지 비교하는 코드
Week today = Week.SUNDAY;
today == Week.SUNDAY
열거 변수의 값이 특정 열거 상수인지 비교할 때 ==, != 연산자를 사용한다.
반응형
'활동 > 독서' 카테고리의 다른 글
[Do it! 점프 투 자바] 04. 제어문 이해하기 (while / for문과 for each문) (0) | 2023.08.24 |
---|---|
[Do it! 점프 투 자바] 03.자바의 기초 - 자료형 (형 변환과 final) (0) | 2023.08.23 |
[Do it! 점프 투 자바] 03.자바의 기초 - 자료형 (증감연산 / Wrapper 클래스 / StringBuffer / List) (0) | 2023.08.18 |
[Do it! 점프 투 자바] 02.자바 시작하기 (변수와 자료형 / 이름 짓는 규칙 / 주석) (0) | 2023.08.18 |
[Do it! 점프 투 자바] 01.자바란 무엇인가? (개발환경 셋팅 / Main 메서드) (0) | 2023.08.17 |