2. SimpleDateFormat的格式化方法
格式化方法说明public final String(Date date)将日期格式化成日期/时间字符串public final String(Object time)将时间毫秒值化成日期/时间字符串例子:3. SimpleDateFormat解析字符串时间成为日期对象解析方法说明public Date pasre(String source)从给定字符串的开始解析文本以生成日期
package com.example.test.simpledateformat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Demo02 {
public static void main(String[] args) throws ParseException {
public static void main(String[] args) throws ParseException {
// 1、开始和结束时间
String startTime = "2021-11-11 00:00:00";
String endTime = "2021-11-11 00:10:00";
// 2、记录小贾,小皮
String xiaoJia = "2021-11-11 00:03:47";
String xiaoPi = "2021-11-11 00:10:11";
// 3、解析时间
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d1 = sdf.parse(startTime);
Date d2 = sdf.parse(endTime);
Date d3 = sdf.parse(xiaoJia);
Date d4 = sdf.parse(xiaoPi);
if(d3.after(d1) && d3.before(d2)){
System.out.println("小贾秒杀成功");
}else{
System.out.println("小贾秒杀失败");
}
if(d4.after(d1) && d4.before(d2)){
System.out.println("小皮秒杀成功");
}else{
System.out.println("小皮秒杀失败");
}
}
}
复制代码
3 Calendar
3.1 Calendar概述
Calendar代表了系统此刻日期对应的日历对象。
Calendar是一个抽象类,不能直接创建对象
Calendar日历类创建日历对象的方法
public static Calendar getInstance():获取当前日历对象
3.2 Calendar常用方法
方法名说明public int get(int field)取日期中的某个字段信息public void set(int field,int value)修改日历中某个字段信息public void add(int field,int amount)为某个字段增加/减少指定值public final Date getTime()拿到此刻日期对象public long getTimeMillis()拿到此刻时间毫秒值note:Calendar是可变日期对象,一旦修改后其对象本身表示的时间将产生变化。
3.3 案例
1. 案例1
package com.example.test.calendar;
import java.util.Calendar;
import java.util.Date;
public class Demo01 {
public static void main(String[] args) {
//1、拿到系统此刻日历对象
Calendar cal = Calendar.getInstance();
//2、 获取日期信息
int year = cal.get(Calendar.YEAR);
System.out.println(year);
int month = cal.get(Calendar.MONTH)+1;
System.out.println(month);
int days = cal.get(Calendar.DAY_OF_YEAR); //一年中的第几天
System.out.println(days);
// 3、修改日历中某个字段信息
cal.set(Calendar.HOUR,12); //一般不会修改时间
// 请问64天后是什么是时间
cal.add(Calendar.DAY_OF_YEAR, 64);
// 拿到此刻日期对象
Date time = cal.getTime();
System.out.println(time);
// 拿到此刻日期毫秒值
long times = cal.getTimeInMillis();
System.out.println(times);
}
}
复制代码
2. 案例2:获取指定日期加某几月之后的日期
public class Demo02 {
public static void main(String[] args) throws ParseException {
String time = "2023-01-30"; //当前时间
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");