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);
}
}