java利用Calendar類打印日歷
本文實(shí)例為大家分享了java利用Calendar類打印日歷的具體代碼,供大家參考,具體內(nèi)容如下
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
System.out.println("請(qǐng)輸入日期(如2018-12-07):");
Scanner sc=new Scanner(System.in);
String riqi= sc.next();
//將接收到的字符串轉(zhuǎn)成日期并設(shè)置
Calendar cal=Calendar.getInstance();
cal.setTime(java.sql.Date.valueOf(riqi));
//獲取本月第一天是星期幾
int startDay=cal.get(Calendar.DAY_OF_WEEK);
/*
* 日歷表頭
*/
System.out.println("星期天"+"\t星期一"+"\t星期二"+"\t星期三"+"\t星期四"+"\t星期五"+"\t星期六");
/*
* 日歷空格
* 記住:星期天是一天的開始
*/
for(int i=1;i<startDay+1;i++) {
System.out.print("\t");
}
/*
* 日歷日期
* cal.getActualMaximum(Calendar.DATE) 獲取本月的最大天數(shù)
*/
for(int i=0;i<cal.getActualMaximum(Calendar.DATE);i++) {
System.out.print(" ");
System.out.print(i+1);
//如果正好打印到當(dāng)天對(duì)應(yīng)的日期,則加一個(gè)*號(hào)
if((i+1)==cal.get(Calendar.DATE))
System.out.print("*");
System.out.print("\t");
//每打印一周換行
if((startDay+i+1)%7==0)
System.out.println();
}
}
}
運(yùn)行效果:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Spring入門實(shí)戰(zhàn)之Profile詳解
什么是spring profile?簡(jiǎn)單講profile就是一組配置,不同profile提供不同組合的配置,程序運(yùn)行時(shí)可以選擇使用哪些profile來(lái)適應(yīng)環(huán)境。下面這篇文章主要介紹了Spring中Profile實(shí)戰(zhàn)的相關(guān)資料,需要的朋友可以參考借鑒。2017-02-02
Java簡(jiǎn)化復(fù)雜系統(tǒng)調(diào)用的門面設(shè)計(jì)模式
Java門面模式是一種結(jié)構(gòu)性設(shè)計(jì)模式,它為復(fù)雜系統(tǒng)提供了一個(gè)簡(jiǎn)單的接口,使得系統(tǒng)的客戶端能夠更加方便地使用系統(tǒng)功能。門面模式通過(guò)封裝復(fù)雜的子系統(tǒng),隱藏系統(tǒng)的實(shí)現(xiàn)細(xì)節(jié),提高了系統(tǒng)的易用性和靈活性2023-04-04
MybatisPlus結(jié)合groupby實(shí)現(xiàn)分組和sum求和的步驟
這篇文章主要介紹了MybatisPlus結(jié)合groupby實(shí)現(xiàn)分組和sum求和的步驟,這次使用的是LambdaQueryWrapper,使用QueryWrapper相對(duì)來(lái)說(shuō)簡(jiǎn)單點(diǎn)就不寫了,本文分步驟給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2023-12-12
Spring BeanPostProcessor源碼示例解析
這篇文章主要為大家介紹了Spring BeanPostProcessor源碼示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
springboot整合通用Mapper簡(jiǎn)化單表操作詳解
這篇文章主要介紹了springboot整合通用Mapper簡(jiǎn)化單表操作,通用Mapper是一個(gè)基于Mybatis,將單表的增刪改查通過(guò)通用方法實(shí)現(xiàn),來(lái)減少SQL編寫的開源框架,需要的朋友可以參考下2019-06-06
java?http請(qǐng)求設(shè)置代理Proxy的兩種常見(jiàn)方法
代理是一種常見(jiàn)的設(shè)計(jì)模式,其目的就是為其他對(duì)象提供一個(gè)代理以控制對(duì)某個(gè)對(duì)象的訪問(wèn),這篇文章主要給大家介紹了關(guān)于java?http請(qǐng)求設(shè)置代理Proxy的兩種常見(jiàn)方法,需要的朋友可以參考下2023-11-11
Java?MapStruct優(yōu)雅地實(shí)現(xiàn)對(duì)象轉(zhuǎn)換
MapSturct?是一個(gè)生成類型安全,高性能且無(wú)依賴的?JavaBean?映射代碼的注解處理器,用它可以輕松實(shí)現(xiàn)對(duì)象轉(zhuǎn)換,下面就來(lái)和大家聊聊具體操作吧2023-06-06
IDEA報(bào)錯(cuò):java:無(wú)效的源發(fā)行版21解決方式
這篇文章主要給大家介紹了關(guān)于IDEA報(bào)錯(cuò):java:無(wú)效的源發(fā)行版21的解決方式,這個(gè)錯(cuò)誤是因?yàn)槟愕捻?xiàng)目使用的Java版本與你的IDEA使用的Java版本不一致導(dǎo)致的,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2024-06-06

