Date: 日期/时间类
构造方法:
public Date()// 系统当前日期时间
public Date(long date) //得到一个1970年1月1日 0点这个时间基础上,加上参数date 毫秒值对应的日期时间
方法:
public long getTime() 获取日期所对应的毫秒值
DateFormat: 是日期/时间格式化子类的抽象类, 使用其子类SimpleDateFormat 实例化
构造方法:
public SimpleDateFormat() 默认的格式化操作
public SimpleDateFormat(String pattern) 按照指定的格式,进行日期格式化
日期和时间模式
y 年
M 年中的月份
d 月份中的天数
H 一天中的小时数(0-23)
m 小时中的分钟数
s 分钟中的秒数
S 毫秒数
方法:
public final String format(Date date) 把日期 格式化成字符串
public Date parse(String source) 把日期字符串 转换成 日期对象
Calendar: 日历类,可获取日期中指定字段的值
方法:
public static Calendar getInstance() //获取日期对象
public int get(int field) //获取时间字段值
public void add(int field,int amount) //指定字段增加某值
public final void set(int field,int value)//设置指定字段的值
public final Date getTime() //获取该日历对象转成的日期对象
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;
public class DateTest {
public static void main(String[] args) throws ParseException {
//计算出生了多少天
Calendar my = Calendar.getInstance();
Calendar c = Calendar.getInstance();
//设置出生年月日 2000-10-1
my.set(Calendar.YEAR, 2000);
my.set(Calendar.MONTH, 9);//MONTH在Calendar中范围是0~11,与实际月份差1
my.set(Calendar.DATE, 1);
long l = c.getTimeInMillis() - my.getTimeInMillis();//计算当前时刻与出生时刻的毫秒差值
long day = l/1000/60/60/24;//将毫秒值转化为天数
System.out.println(day);
//计算今天距离2020年1月1日还有多少天
DateFormat dFormat = new SimpleDateFormat("yyyy-MM-dd");
Date now = new Date();
Date future = dFormat.parse("2020-1-1");
long ls = future.getTime() - now.getTime();//计算当前时刻与2020年1月1日的毫秒差值
long myDay = ls/1000/60/60/24;//将毫秒值转化为天数
System.out.println(myDay);
//判断是否是闰年
Scanner scanner = new Scanner(System.in);
System.out.println("请输入需要判断的年份:");
int year = scanner.nextInt();
Calendar calendar = Calendar.getInstance();//获取日历对象
calendar.set(year, 2, 1);//设置日期为year年3月1日
calendar.add(Calendar.DATE, -1);//向前推一天
int iday = calendar.get(Calendar.DATE);//获取向前推一天的天数,日期数
if(iday == 29) {//判断日期,如果是29,则证明当前输入的year年的2月有29天,则证明是闰年,反之则是平年
System.out.println(year+"是闰年");
}else {
System.out.println(year+"是平年");
}
}
}