java实现简单的日历功能
Posted fuyunhou-boke-07
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java实现简单的日历功能相关的知识,希望对你有一定的参考价值。
package com.zx.text1;
import java.util.Scanner;//获取输入窗口函数
import java.util.Calendar;
import java.util.Date;//获取时间日期函数
import java.util.GregorianCalendar;
import java.text.*;
public class demo3
public static void main (String[] args) throws ParseException
int maxDay = 0;
int firstDay = 0;
int currentDay = 0;
System.out.println("请输入一个日期,格式为:2019-01-01");
Scanner sc = new Scanner(System.in);
//获取键盘输入的时间格式
String str = sc.nextLine();
DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date date = format.parse(str);
//将字符串转化为指定的日期格式
Calendar calendar = new GregorianCalendar();
//将日期转为日历
calendar.setTime(date);
maxDay = calendar.getActualMaximum(Calendar.DATE);//获取最大的数
currentDay = calendar.get(Calendar.DATE);
//当前日期中前天
calendar.set(Calendar.DATE,1);
//设置为当前页的第一天
firstDay = calendar.get(Calendar.DAY_OF_WEEK);
//当前日期中 当月第一天对应的星期数
System.out.println("--------------------------------------------------");
System.out.println("周日 \t 周一\t 周二 \t 周三 \t周四\t 周五\t 周六");
System.out.println("---------------------------------------------------");
for(int j = 1;j < firstDay;j++)
//当前月之前空格输出
System.out.print("\t");
//输出当月每一天的号数
for(int i = 1;i <= maxDay;i++)
//表示当天日期
if(i == currentDay)
System.out.print("");
System.out.print(i+"\t");
if((i-(8-firstDay))%7 == 0) //7天为一个循环 输出所有的数
System.out.println("\n");
以上是关于java实现简单的日历功能的主要内容,如果未能解决你的问题,请参考以下文章