日期类处理: package com.gcx.demo; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; public class Test1 { public static void main(String[] args) throws ParseException { //时间转换成字符串 DateFormat d=new SimpleDateFormat("yyyy-mm-dd hh:mm:ss,属于第W周"); Date date=new Date(454545454L); String format = d.format(date); System.out.println(format); System.out.println("**********************"); //字符串转换成时间 String str="2017-05-04"; DateFormat format2=new SimpleDateFormat("yyyy-mm-dd"); Date parse = format2.parse(str); System.out.println(parse); Calendar c=new GregorianCalendar(); c.set(2017, Calendar.MAY, 4, 13, 13, 13);//设置年月日时分秒 System.out.println(c.getTime()); c.set(Calendar.YEAR, 2018);//设置年份为2018 c.add(Calendar.YEAR, 30);//年份加上30年 System.out.println(c.getTime()); } } 结果运行如下: 简单日历实现: package com.gcx.demo; 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; public class Demo2 { public static void main(String[] args) throws ParseException { System.out.println("请输入日期(按照格式:2018-12-12):"); Scanner scanner = new Scanner(System.in); String temp = scanner.nextLine(); DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); try { Date date = format.parse(temp); Calendar calendar = new GregorianCalendar(); calendar.setTime(date); int day = calendar.get(Calendar.DATE); calendar.set(Calendar.DATE, 1); int maxDate = calendar.getActualMaximum(Calendar.DATE); System.out.println("日\t一\t二\t三\t四\t五\t六"); for(int i=1;i<calendar.get(Calendar.DAY_OF_WEEK);i++){ System.out.print('\t'); } for(int i=1;i<=maxDate;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.print('\n'); } calendar.add(Calendar.DATE, 1); } } catch (ParseException e) { e.printStackTrace(); } } }