本篇文章给大家谈谈java日期的前后,以及java产生当前日期的方法对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
1、java 获取本机当前时间并对小时任意加减,后判断新时间与当前时间的前后关系 求程序2、java 计算某日期 多少天后的日期3、java日期格式转换的问题4、java 计算年月日日期前多少天5、JAVA 日期排序
java 获取本机当前时间并对小时任意加减,后判断新时间与当前时间的前后关系 求程序
import java.util.Date;
import org.apache.commons.lang3.time.DateUtils;
public class Test {
public static void main(String[] args) {
Date now = new Date();
// 减一小时
Date add = DateUtils.addHours(now, -1);
// 加一小时
Date sub = DateUtils.addHours(now, 1);
if (add.after(now)) {
System.out.println(“当前时间后”);
} else {
System.out.println(“当前时间前”);
}
if (sub.before(now)) {
System.out.println(“当前时间前”);
} else {
System.out.println(“当前时间后”);
}
}
}
java 计算某日期 多少天后的日期
java计算某日期之后的日期,可以参考如下代码:
public static void main(String[] args) {
// 时间表示格式可以改变,yyyyMMdd需要写例如20160523这种形式的时间
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy/MM/dd”);
String str = “2016/05/23”;
// 将字符串的日期转为Date类型,ParsePosition(0)表示从第一个字符开始解析
Date date = sdf.parse(str, new ParsePosition(0));
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
// add方法中的第二个参数n中,正数表示该日期后n天,负数表示该日期的前n天
calendar.add(Calendar.DATE, -10);
Date date1 = calendar.getTime();
String out = sdf.format(date1);
System.out.println(out);
}
java日期格式转换的问题
楼主总共提出了两个问题,简单回答一下:
1.正如楼上各位给出的,用SimpleDateFormat即可对格式进行制定转换:
2.用after方法,或者提供的before()、compareTo()其实是可以进行时间的比较的,不过可能是楼主没有仔细看API中的关于Date类的详细介绍,简单介绍一下,Date类是以格林尼治时间为基准的。
这个是getYear()方法的介绍,它是要将现在的年份减去1900返回的
这个是getMonth()方法的介绍,返回的是0~11之间的,即一月为0,十二月为11:
这个是getDate()方法的介绍:
所以,如果进行时间比较,如代码中所写,需将年份减1900,月份-1来赋值,再进行比较即可。如图,after返回true,compareTo返回1.
java 计算年月日日期前多少天
java.util.Calendar 的int get(int)方法,参数是
static int
DAY_OF_YEARField number for get and set indicating the day
number within the current year.
java.util.Calendar cl = java.util.Calendar.getInstance();
System.out.println(cl.get(java.util.Calendar.DAY_OF_YEAR));
JAVA 日期排序
前提,假设你使用一个数组来保存一组开始时间+结束时间,当然,你也可以用其它的数据结构。
基本思路,1转换为Date型,2使用Calendar类来比较两个日期,3 自己实现compare方法:
各部分的例子:
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(“yyyy年MM月dd日”);
Date startDate1 = simpleDateFormat.parse(“2018年3月18日”);
Date startDate2 = simpleDateFormat.parse(“2018年3月12日”);
private void sort(ListDate dataList){
Collections.sort(dataList, new ComparatorDate() {
@Override
public int compare(Date o1, Date o2) {
if(d1 != null d2 != null){
Calendar c1 = Calendar.getInstance();
Calendar c2 = Calendar.getInstance();
c1.setTime(o1);
c2.setTime(o2);
return c1.After(c2);
}else{
return -1;
}
}
});
}
大概写了下,具体你自己调调,还要注意异常处理。
java日期的前后的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java产生当前日期的方法、java日期的前后的信息别忘了在本站进行查找喔。