Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- HTML
- 안드로이드
- 메소드
- 생성자
- layout
- 배열
- JavaScript
- mybatis
- Spring
- 에러페이지
- Menu
- 오버로딩
- 어노테이션
- 전화걸기
- 이클립스
- 클래스
- JSP
- Eclips
- Graphic
- 국제화
- oracle
- 메서드
- AWT
- OGNL
- Android
- paint
- 예외처리
- Java
- struts2
- 기본
Archives
- Today
- Total
note
Calendar 클래스로 달력 만들기 본문
package com.datetest;//입력받은 데이터로 달력 출력
import java.util.Scanner;
import java.util.Calendar;
public class CalendarMain {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
//데이터 입력부분
System.out.println("희망 년도와 월을 입력하시게나 (ex년도 : 2009,월 : 3)");
System.out.print("년도 : ");
int year = sc.nextInt();
System.out.print("월: ");
int month = sc.nextInt();
System.out.println(" [ "+year+"년 "+month+"월"+" ] ");
System.out.println("=-=-=-=-=-=-=-=-=-=-=-=-");
System.out.println(" 일 월 화 수 목 금 토");
//Calendar 객체 생성 (오늘의 대한 정보)
Calendar cal = Calendar.getInstance();
//희망 연도, 월, 일 셋팅
//월의 범위는 0~11 이기 때문에 실제월 -1
//일은 달력이 1일부터 시작하기 때문에 1일로 셋팅
//요일 구하기(월의 첫날)
cal.set(year, month-1,1);
//달의 마지막 날짜를 구함
int lastOfDate = cal.getActualMaximum(Calendar.DATE);
//주를 구함 1일요일 ,2월요일
int week = cal.get(Calendar.DAY_OF_WEEK);
//1일이 해당 요일에 위치하도록 공백을 만들어 밀어주는 역할
//실제 달력이
for(int i = 1;i < week ; i++)
System.out.print(" ");
for(int i =1;i<=lastOfDate;i++){
//달력 정렬을 위해 1~9까지는 공백이3칸 10부터는 2칸 공백 넣기
System.out.print((i<10)?" "+i : " "+i);
//토요일에 날짜를 표시하고 줄바꿈 하는 코드
if(week%7==0)System.out.println();
week++;
}
System.out.println("\n=-=-=-=-=-=-=-=-=-=-=-=-");
}
}
희망 년도와 월을 입력하시게나 (ex년도 : 2009,월 : 3)
년도 : 2011
월: 12
[ 2011년 12월 ]
=-=-=-=-=-=-=-=-=-=-=-=-
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
=-=-=-=-=-=-=-=-=-=-=-=-
'자바 > 중요 클래스들' 카테고리의 다른 글
Iterator 인터페이스 사용 (0) | 2011.12.28 |
---|---|
ArrayList클래스 사용 (0) | 2011.12.28 |
Calendar 클래스 사용 (0) | 2011.12.27 |
SimpleDateFormat 클래스 사용법 (0) | 2011.12.27 |
난수를 사용할때 (0) | 2011.12.27 |