判断时间戳是不是今天

流程图

pie
    title 判断时间戳是不是今天
    "获取当前时间戳" : 40.0
    "将时间戳转换为当前日期" : 30.0
    "将当前日期转换为时间戳" : 20.0
    "比较时间戳是否相等" : 10.0

代码实现

步骤1:获取当前时间戳

我们可以使用System.currentTimeMillis()方法来获取当前的时间戳。

long currentTime = System.currentTimeMillis();

步骤2:将时间戳转换为当前日期

我们需要使用java.util.Date类将时间戳转换为日期对象,然后使用java.text.SimpleDateFormat类将日期对象格式化为字符串。最后,我们可以使用SimpleDateFormat类的format方法将日期对象转换为字符串形式。

import java.text.SimpleDateFormat;
import java.util.Date;

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String currentDate = sdf.format(new Date(currentTime));

步骤3:将当前日期转换为时间戳

我们可以使用SimpleDateFormat类的parse方法将日期字符串解析为日期对象,然后使用Date对象的getTime方法将日期对象转换为时间戳。

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date;
try {
    date = sdf.parse(currentDate);
    long currentTimestamp = date.getTime();
} catch (ParseException e) {
    e.printStackTrace();
}

步骤4:比较时间戳是否相等

我们可以使用currentTimecurrentTimestamp进行比较,如果它们相等,则时间戳是今天的日期;否则,时间戳不是今天的日期。

boolean isToday = currentTime == currentTimestamp;

完整代码示例

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class TimestampUtil {
    public static boolean isToday(long timestamp) {
        // 获取当前时间戳
        long currentTime = System.currentTimeMillis();
        
        // 将时间戳转换为当前日期
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String currentDate = sdf.format(new Date(currentTime));
        
        // 将当前日期转换为时间戳
        Date date;
        try {
            date = sdf.parse(currentDate);
            long currentTimestamp = date.getTime();
            
            // 比较时间戳是否相等
            return timestamp == currentTimestamp;
        } catch (ParseException e) {
            e.printStackTrace();
        }
        
        return false;
    }
    
    public static void main(String[] args) {
        long timestamp = 1639824000000L; // 2021-12-19 00:00:00
        
        boolean isToday = isToday(timestamp);
        System.out.println("Is today: " + isToday);
    }
}

总结

通过以上步骤,我们可以判断给定的时间戳是否是今天。首先,我们获取当前的时间戳;然后,将时间戳转换为当前日期;接着,将当前日期转换为时间戳;最后,比较时间戳是否相等。如果时间戳与当前日期的时间戳相等,则表示时间戳是今天;否则,时间戳不是今天。

希望本文对你理解如何判断时间戳是否是今天有所帮助!