一、输出当前年月日,时分秒。
方法一:利用Date获取本机时间
public class world {
public static void main(String[] args) {
Date a = new Date(); //实例化本机时间对象
var t1 = a.getTime();//获取本机时间赋值给t1
var S = new SimpleDateFormat("yyy年MM月dd日 HH时mm分ss秒");//实例化一个日期格式
System.out.println(S.format(t1));//把时间t1传给对象S并输出
}
}
方法二:直接调用currenTimeMillis方法获取本机时间
public static void main(String[] args) {
var t1 = System.currentTimeMillis();//获取当前时间赋值给t1(注意时间单位是毫秒)
var S = new SimpleDateFormat("yyy年MM月dd日 HH时mm分ss秒");//实例化一个日期格式对象
System.out.println(S.format(t1));
}
## 二、指定系统时间
一:直接给Date赋值
public static void main(String[] args) {
var t1 = new Date(1637648060786l);//给系统时间传值1637648060786l(这里传进去的值是毫秒)
System.out.println(t1.getTime());//获取的当前时间(毫秒)
System.out.println(t1.getMonth());//输出时间月
System.out.println(t1.getDate());//输出日
System.out.println(t1.getHours());//输出时
System.out.println(t1.getSeconds());//输出秒
var S = new SimpleDateFormat("yyy年MM月dd日 HH时mm分ss秒");//实例化一个日期格式对象
System.out.println(S.format(t1));//输出当前日期
}
二:
public static void main(String[] args) {
var a = Calendar.getInstance();//获取当前日期并实例化一个对象
var b = a.getTime();//将日历对象转化成Date型日期对象
a.add(Calendar.YEAR, 2);//给当前年加1
a.add(Calendar.DAY_OF_MONTH, 1);//给当前日加1
int y = a.get(Calendar.YEAR);//获取日历对象中的年份
int m = a.get(Calendar.MONTH);//获取日历对象中的日
System.out.println(a.get(Calendar.DATE));
System.out.println(a.get(Calendar.YEAR));
}
## 三、两个日期相减
public static void main(String[] args) throws ParseException {
//两个日期相减
Date a = new Date();
System.out.println(a.getTime());
var b = a.getTime() / (1000 * 60 * 60 * 24);
var c = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
var d = c.parse("2000-01-01 00:00:00");
var e = d.getTime() / (1000 * 60 * 60 * 24);
System.out.println(e);
System.out.println(b);
System.out.println(b - e);
}
## 四、在指定的两个日期之间随机生成一个日期
public static void main(String[] args) throws ParseException {
//在指定的两个日期之间随机生成一个日期
var a = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
var b = a.parse("2001-01-01 00:00:00");
long c = b.getTime();
var a1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
var d = a1.parse("2022-01-01 00:00:00");
long f = d.getTime();
var h = new Random();
var j = h.nextLong(c, f);
System.out.println(h.nextLong(c, f));
var a2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
var d1 = new Date(j);
System.out.println(a2.format(d1));
}