java基础知识(Date类,SimpleDateFormat类,Calendar类)

it2022-05-05  161

Java第十四天之学到辽~

1.1 Date类

Date的概述
表示特定的瞬间的毫秒值
构造方法
* public Date() * public Date(long date) 把一个long类型的毫秒值转换成一个日期对象
成员方法
* public long getTime() 获取一个日期对象对象毫秒值 * public void setTime(long time) 给一个日期对象设置上指定的毫秒值 例:date.setTime(1000 * 60 * 60) ;
转换
Date ----> long 的转换 * 调用getTime方法 long ----> Date 的转换 * 可以使用构造方法 * setTime(long time)

1.2 SimpleDateFormat类

SimpleDateFormat的概述
可以把一个日期对象格式化成一个文本(字符串) , 也可以把一个日期字符串解析成一个日期对象
构造方法
* public SimpleDateFormat() 使用默认的模式来创建一个SimpleDateFormat对象 * public SimpleDateFormat(String pattern) 使用指定的模式(规则比如yyyy:MM:dd HH:mm:ss)来创建一个SimpleDateFormat对象 规则: y 年 M 月 d 天 H 时 m 分 s 秒 E 星期几
成员方法
* public String format(Date date) 把一个日期对象格式化成一个字符串 * public Date parse(String dateStr) 把一个日期字符串解析成一个日期对象 注意要以指定格式解析
例子:获取指定的日期 与今天相距多少天
public class learn1 { public static void main(String[] args) throws ParseException { Scanner scanner = new Scanner(System.in); System.out.println("请输入一个日期,例如2012-02-03"); String s = scanner.nextLine(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); Date parse = simpleDateFormat.parse(s); long time1 = parse.getTime(); Date date = new Date(); long time = date.getTime(); long aa=time-time1; long day=aa/1000/60/60/24; System.out.println(day); } }

1.3 Calendar类

Calendar类的概述
Calendar 类是一个抽象类,不能直接new对象,可以通过他的一个静态成员方法getInstance() 来获取他的对象 它为 特定瞬间 与 诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等日历字段之间的转换 提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。
成员方法
* public static Calendar getInstance() 使用默认时区和语言环境获得一个日历对象 * public int get(int field) 获得给定日历字段对应的值 field通过Calendar提供的字段来拿 * public void add(int field,int amount) 根据日历的规则,为给定的日历字段添加或减去指定的时间量 * public final void set(int year,int month,int date) 设置日历时间 年月日
例子
public class MyTest { public static void main(String[] args) { //需求:键盘录入任意一个年份,获取任意一年的二月有多少天 //分析: Scanner scanner = new Scanner(System.in); System.out.println("请输入一个年份 例如 2000"); int year= scanner.nextInt(); //判断闰年 if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) { System.out.println("是闰年"); } //-a:键盘录入一个年份 // - b:创建一个Calendar对象 // - c:把这个Calendar的时间设置为a中录入的年的3月1号 注意2表示3月 //-d:向前推算一天 // - e:获取月中的天 // - f:输出 Calendar instance = Calendar.getInstance(); instance.set(year,2,1); instance.add(Calendar.DAY_OF_MONTH,-1); int i = instance.get(Calendar.DAY_OF_MONTH); System.out.println(i); } }

最新回复(0)