将获取的当前日期转化成相应格式输出。
System.currentTimeMillis()表示获取自 1970 年 1 月 1 日 00:00:00 GMT 以来此日期表示的毫秒数。
SimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化。
SimpleDateFormat :日期和时间模式定义了以下模式字母
![](http://dl2.iteye.com/upload/attachment/0112/6406/53862de0-b53c-3c73-92cd-ba6e85bf30d6.png)
这是一个获取当前时间的代码
package com.jk.yt.rili; import java.text.SimpleDateFormat; import java.util.Date; public class DateDemo { public static void main(String[] args) { //System.currentTimeMillis()表示获取自 1970 年 1 月 1 日 00:00:00 GMT 以来此日期表示的毫秒数。 long t = System.currentTimeMillis(); Date d1 = new Date(t); //SimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。 //它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化。 // 10/26 2015 19:56:11 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String str = sdf.format(d1); System.out.println(str); } }
![](http://dl2.iteye.com/upload/attachment/0112/6408/98e1d3b3-0486-3ff3-b17a-9bf4daf052f2.png)
日历的实现:
Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间 1970 年 1 月 1 日的 00:00:00.000,格里高利历)的偏移量。
输入一个日期,并在该日期的前面加*号标识
package com.jk.yt.rili; 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 Rili { public static void main(String[] args) { System.out.println("请输入日期(按照格式:2015-10-23)"); //键盘的输入 Scanner scanner=new Scanner(System.in); String temp=scanner.nextLine(); SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd"); try { Date date= format.parse(temp); Calendar calendar = new GregorianCalendar(); calendar.setTime(date); int today = calendar.get(Calendar.DATE); calendar.set(Calendar.DATE, 1); //一个月有多少天 int mouthDays = calendar.getActualMaximum(Calendar.DATE); System.out.println("日\t一\t二\t三\t四\t五\t六"); //在1号之前输出空白 for(int i=1;i<calendar.get(Calendar.DAY_OF_WEEK);i++){ System.out.print('\t'); } for(int i=1;i<=mouthDays;i++){ if(i==today){//在当天的前面加*标识 System.out.print("*"); } System.out.print(i+"\t"); //获取当前是周几 int day = calendar.get(Calendar.DAY_OF_WEEK); //遇到周六换行 if(day==Calendar.SATURDAY){ System.out.println("\n"); } //当前日期加1 calendar.add(Calendar.DATE, 1); } } catch (ParseException e) { e.printStackTrace(); } } }
![](http://dl2.iteye.com/upload/attachment/0112/6410/8f47bcf4-ddeb-3b68-8175-58632529a994.png)