Java/BookExample
열거 타입과 열거 상수
어굴애
2021. 3. 3. 01:24
p.175 Calendar.getInstance() 메소드와 get()메소드의 활용
package BookExampleHomework;
import java.util.Calendar;
public class EnumWeekExample {
public static void main(String[] args) {
Week today = null; //열거타입 변수 선언 -->스택메모리에 today 저장, 아직 참조하는 값은 없음
Calendar cal = Calendar.getInstance();
//getInstance 메소드의 리턴 값으로 Calendar 객체 반환되고, 그 주소를 cal에 저장함. 이를 통해 년,월,일,요일,시간,분,초를 얻을 수 있는 get()메소드를 이용할 수 있음.
//getInstance 메소드 안에 힙메모리에 할당하는 과정이 포함되어 있기 때문에 객체가 반환됨.
int week = cal.get(Calendar.DAY_OF_WEEK); //일1~토7까지의 숫자를 리턴
//get메소드를 통해 cal에 담긴 날짜정보를 요일별 숫자로 리턴해 변수 week에 저장
switch(week) {
case 1:
today = Week.SUNDAY; break; //열거상수대입 (열거상수는 항상 열거타입.열거상수의 형태로 쓰임)
case 2:
today = Week.MONDAY; break;
case 3:
today = Week.TUSEDAY; break;
case 4:
today = Week.WEDNESDAY; break;
case 5:
today = Week.THURSDAY; break;
case 6:
today = Week.FRIDAY; break;
case 7:
today = Week.SATURDAY; break;
}
System.out.println("오늘 요일: "+ today);
if(today == Week.SUNDAY) {
System.out.println("일요일에는 축구를 합니다.");
}else {
System.out.println("열심히 자바 공부합니다.");
}
}
}