[Java核心技术(卷I)] - 简易的日历
生活随笔
收集整理的這篇文章主要介紹了
[Java核心技术(卷I)] - 简易的日历
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
參考 - P102~P103
1. 目標(biāo)
生成一個(gè)日歷,格式如下圖所示。
ps: 當(dāng)前的天數(shù)需要標(biāo)記為*
2. 核心
對(duì)日歷的變量
import java.time.*; public class CalendarTest{public static void main(String[] args) {LocalDate date = LocalDate.now(); // 獲取當(dāng)前日期int month = date.getMonthValue(); // 獲取當(dāng)前月份int today = date.getDayOfMonth(); // 獲取當(dāng)前的天數(shù)date = date.minusDays(today - 1); // 將當(dāng)前日期設(shè)置為月初while(date.getMonthValue() == month) { // 只要是當(dāng)月就輸出,否則跳出循環(huán)System.out.printf("%3d", date.getDayOfMonth());date = date.plusDays(1);}} }3. 實(shí)現(xiàn)
在核心部分實(shí)現(xiàn)了日歷的循環(huán)打印,接下來(lái)只需要補(bǔ)全表頭、當(dāng)前日期和換行即可.
import java.time.*;public class CalendarTest{public static void main(String[] args) {LocalDate date = LocalDate.now();int month = date.getMonthValue();int today = date.getDayOfMonth();date = date.minusDays(today - 1); // 設(shè)置為本月的開(kāi)頭DayOfWeek weekday = date.getDayOfWeek(); // 獲取星期幾int value = weekday.getValue(); // 將星期幾兌換成對(duì)應(yīng)的數(shù)字System.out.println("Mon Tue Wed Thu Fri Sat Sun"); // 日歷頭for(int i = 1; i < value; i++) { // 打印對(duì)應(yīng)的空格System.out.print(" ");}while(date.getMonthValue() == month) {System.out.printf("%3d", date.getDayOfMonth()); // 獲取當(dāng)前多少號(hào)if(date.getDayOfMonth() == today) {System.out.print("*");} else {System.out.print(" ");}date = date.plusDays(1);if(date.getDayOfWeek().getValue() == 1){System.out.println();}}if (date.getDayOfWeek().getValue() != 1) System.out.println();} }總結(jié)
以上是生活随笔為你收集整理的[Java核心技术(卷I)] - 简易的日历的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Jenkins主从节点配置
- 下一篇: [Java核心技术(卷I)] - Jav