使用Java日期和时间函数的10个实用技巧
发布时间:2023-06-11 05:14:36
1. 在Java中获取当前日期和时间
使用Java提供的Date类可以获取当前的日期和时间。以下代码可以输出当前的年月日和时分秒。
import java.util.Date;
public class GetCurrentDateTime {
public static void main(String[] args) {
Date date = new Date();
System.out.println(date.toString());
}
}
2. 在Java中获取指定日期的月份和日期
使用SimpleDateFormat类可以将日期格式化成指定格式,以下代码可以输出指定日期的月份和日期。
import java.text.SimpleDateFormat;
import java.util.Date;
public class GetMonthAndDay {
public static void main(String[] args) {
Date date = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
String dateString = formatter.format(date);
System.out.println(dateString);
}
}
3. 在Java中获取当前时间的时间戳
使用System类的currentTimeMillis()方法可以获取当前时间的时间戳(毫秒级别),以下代码可以输出当前时间的时间戳。
public class GetTimeStamp {
public static void main(String[] args) {
long timeStamp = System.currentTimeMillis();
System.out.println(timeStamp);
}
}
4. 在Java中获取指定日期的时间戳
使用Date类的getTime()方法可以获取指定日期的时间戳(毫秒级别),以下代码可以输出指定日期的时间戳。
import java.util.Date;
public class GetTimeStamp {
public static void main(String[] args) {
Date date = new Date(2021, 5, 1);
long timeStamp = date.getTime();
System.out.println(timeStamp);
}
}
5. 在Java中将时间戳转换为日期
使用SimpleDateFormat类的format()方法可以将时间戳转换为指定日期格式,以下代码可以输出时间戳对应的日期。
import java.text.SimpleDateFormat;
import java.util.Date;
public class ConvertTimeStampToDate {
public static void main(String[] args) {
long timeStamp = 1623379200000L;
Date date = new Date(timeStamp);
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateString = formatter.format(date);
System.out.println(dateString);
}
}
6. 在Java中将日期转换为时间戳
使用Date类的getTime()方法可以将日期转换为时间戳(毫秒级别),以下代码可以输出日期对应的时间戳。
import java.util.Date;
public class ConvertDateToTimeStamp {
public static void main(String[] args) {
Date date = new Date(2021, 5, 1);
long timeStamp = date.getTime();
System.out.println(timeStamp);
}
}
7. 在Java中比较两个日期的大小
使用Date类的compareTo()方法可以比较两个日期的大小,以下代码可以比较两个日期的大小。
import java.util.Date;
public class CompareDates {
public static void main(String[] args) {
Date date1 = new Date(2021, 5, 1);
Date date2 = new Date(2021, 6, 1);
int result = date1.compareTo(date2);
if (result > 0) {
System.out.println("date1 is after date2");
} else if (result < 0) {
System.out.println("date1 is before date2");
} else {
System.out.println("date1 is equal to date2");
}
}
}
8. 在Java中计算指定日期之间的天数差
使用Date类的getTime()方法可以将日期转换为时间戳,然后可以计算时间戳之间的差值,然后将差值转换为天数,以下代码可以计算指定日期之间的天数差。
import java.util.Date;
public class CalculateDays {
public static void main(String[] args) {
Date date1 = new Date(2021, 5, 1);
Date date2 = new Date(2021, 6, 1);
long timeStamp1 = date1.getTime();
long timeStamp2 = date2.getTime();
long diff = Math.abs(timeStamp2 - timeStamp1);
long diffDays = diff / (24 * 60 * 60 * 1000);
System.out.println(diffDays);
}
}
9. 在Java中获取指定时间之后的日期
使用Calendar类可以进行日期计算,以下代码可以获取当前时间之后7天的日期。
import java.util.Calendar;
import java.util.Date;
public class GetDateAfter {
public static void main(String[] args) {
Date date = new Date();
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, 7);
Date dateAfter = calendar.getTime();
System.out.println(dateAfter);
}
}
10. 在Java中获取当月的最后一天日期
使用Calendar类可以进行日期计算,以下代码可以获取当前月份的最后一天日期。
import java.util.Calendar;
import java.util.Date;
public class GetLastDayOfMonth {
public static void main(String[] args) {
Date date = new Date();
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
Date lastDayOfMonth = calendar.getTime();
System.out.println(lastDayOfMonth);
}
}
