자바 캘린더 활용 및 공휴일 구하는 로직을 추가하여 달력을 만들어 보았다.
[Java] 공휴일 구하기
한국 공휴일 구하기 public class LunarCalendar { static Set holidaysSet = new HashSet(); public static final int LD_SUNDAY = 7; public static final int LD_SATURDAY = 6; public static final int LD_MONDAY = 1; public static void main(String[] args) {
smrdls-java.tistory.com
public class JavaCalandar {
public static final String black = "\u001B[30m" ;
public static final String red = "\u001B[31m" ;
public static final String green = "\u001B[32m" ;
public static final String yellow = "\u001B[33m" ;
public static final String blue = "\u001B[34m" ;
public static final String purple = "\u001B[35m" ;
public static final String cyan = "\u001B[36m" ;
public static final String white = "\u001B[37m" ;
public static final String exit = "\u001B[0m" ;
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
int last = cal.getActualMaximum(Calendar.DATE);
LunarCalendar lc = new LunarCalendar();
while(true){
Set set = lc.holidayArray(cal.get(Calendar.YEAR)+"");
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
System.out.println("--------"+cal.get(Calendar.YEAR)+"년 "+(cal.get(Calendar.MONTH)+1)+"월---------");
System.out.println(red+"일\t"+exit+"월\t화\t수\t목\t금\t"+blue+"토"+exit);
System.out.println("--------------------------");
cal.set(Calendar.DATE, 1);
int day = cal.get(Calendar.DAY_OF_WEEK);
for (int i = 1; i <day; i++) {
System.out.print("\t");
}
for (int i = 1; i <= last; i++) {
cal.set(Calendar.DATE, i);
day = cal.get(Calendar.DAY_OF_WEEK);
if (day == Calendar.SATURDAY) {
System.out.println(blue+i+exit);
}else if(day == Calendar.SUNDAY) {
System.out.print(red + i + exit+"\t");
}else {
if(set.contains(sdf.format(cal.getTime()))){
System.out.print(red + i + exit+"\t");
}else{
System.out.print(i + "\t");
}
}
}
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
if(str.equals("<")) {
cal.add(Calendar.MONTH, -1);
last = cal.getActualMaximum(Calendar.DATE);
}else if(str.equals(">")){
cal.add(Calendar.MONTH, 1);
last = cal.getActualMaximum(Calendar.DATE);
}
}
}
}
'JAVA > Java Study' 카테고리의 다른 글
[JAVA] 한글 -> 로마자 변환 (0) | 2024.01.19 |
---|---|
[Java] Java 한글 라이브러리 hwpxlib (0) | 2023.12.18 |
[Java] 공휴일 구하기 (0) | 2023.11.30 |
[Java] Oracle 타입별 매핑표 (1) | 2023.11.28 |
[Java] portable 버전 만들어보기 (0) | 2023.10.24 |