1,获取当前时间戳
//方法 一long time1 = System.currentTimeMillis(); // 带毫秒int timestamp1 = (int)(time1 / 1000); // 不带毫秒//方法 二long time2 = Calendar.getInstance().getTimeInMillis(); // 带毫秒int timestamp2 = (int)(time2 / 1000); // 不带毫秒//方法 三long time3 = new Date().getTime(); // 带毫秒int timestamp3 = (int)(time3 / 1000); // 不带毫秒
2,获取当前格式化时间
// 方式一// 设置日期格式SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// new Date()为获取当前系统时间,也可使用当前时间戳String date = df.format(new Date());// 方式二String s = new DateTime().toString("yyyy-MM-dd HH:mm:ss");
3,时间戳与时间互转
// 设置日期格式SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// 将秒级时间戳先转成毫秒级然后再格式化String date = sdf.format(1636008749 * 1000);System.out.println(date); // 输出:2021-11-04 14:52:29// 将时间转成秒级时间戳Date parse = sdf.parse("2021-11-04 14:52:29");long ts = parse.getTime();System.out.println(ts / 1000); // 输出:1636008749
4,获取当前日期是一年当中的第几周
// 方式一Calendar calendar = Calendar.getInstance();//设置星期一为一周开始的第一天calendar.setFirstDayOfWeek(Calendar.MONDAY);//获得当前的时间戳calendar.setTimeInMillis(System.currentTimeMillis());//获得当前日期属于今年的第几周int weekOfYear = calendar.get(Calendar.WEEK_OF_YEAR);System.out.println(weekOfYear);// 方式二DateTime dateTime = new DateTime();System.out.println(dateTime.getWeekOfWeekyear());
5,日期比较
SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd");Date parse = date.parse("2021-12-29");Date nowdate = date.parse("2021-10-29");// 可以理解为:after相当于">"号,before相当于"<"号System.out.println(parse.after(nowdate)); //trueSystem.out.println(nowdate.after(parse)); //falseSystem.out.println(parse.before(nowdate)); //falseSystem.out.println(nowdate.before(parse)); //true