使用JAVA寫一個簡單的日歷


JAVA寫一個簡單的日歷

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Scanner;

/**
 * 制作一個簡單的日歷
 * 
 * @author 這知識它不進腦子呀
 *
 */
public class date {

	public static void main(String[] args) {
		// 從控制台輸入
		Scanner scanner = new Scanner(System.in);
		// 提示用戶
		System.out.println("請輸入日期(如:2019-5-16):");
		// 獲取輸入的日期
		String date = scanner.nextLine();
		try {
			// 日期格式化類
			DateFormat dFormat = new SimpleDateFormat("yyyy-MM-dd");
			// 把字符串類型的日期轉換為date類型的
			Date parse = dFormat.parse(date);
			// 創建一個公歷類的實例
			Calendar calendar = new GregorianCalendar();
			// 把格式化好的日期對象放進Calendar
			calendar.setTime(parse);
			// 獲取今天是幾號
			int day = calendar.get(Calendar.DATE);
			// DATE設置成這個月的一號
			calendar.set(Calendar.DATE, 1);
			// 獲取這個月的第一天是周幾
			int weekDay = calendar.get(Calendar.DAY_OF_WEEK);
			// 獲取每個月最大的天數
			int maxDay = calendar.getActualMaximum(Calendar.DATE);

			System.out.println("日\t一\t二\t三\t四\t五\t六");

			// 循環打印 空格
			for (int i = 1; i < weekDay; i++) {
				System.out.print("\t");
			}
			// 循環打印天數
			for (int i = 1; i <= maxDay; i++) {
				// 判斷如果i 等於 今天 前面打印一個❀做記號
				if (i == day) {
					System.out.print("❀");
				}
				// 打印 天數
				System.out.print(i + "\t");
				// 獲取今天是周幾
				int w = calendar.get(Calendar.DAY_OF_WEEK);
				// 如果今天是周六就讓其換行
				if (w == Calendar.SATURDAY) {
					System.out.println();
				}
				// 天數自增
				calendar.add(Calendar.DATE, 1);
			}
		} catch (ParseException e) {
			e.printStackTrace();
		}
	}

}

  

 

原文:https://blog.csdn.net/weixin_44317113/article/details/90299582

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM