java中日期的加减,比较,以及与String的互相转换

java中日期加减:
 
add(int field, int amount)
第一个参数为作用域,可以是年,月,日,天,周,小时等,第二个参数为增加的值(注意,可以为负数)。
GregorianCalendar.add(Calendar.YEAR, -1); 表示年份减一.
GregorianCalendar.add(Calendar.MONTH, -1); 表示月份减一.
GregorianCalendar.add(Calendar.WEEK_OF_YEAR, -1); 表示周减一.
GregorianCalendar.add(Calendar.DATE, -1); 表示天减一.
GregorianCalendar.add(Calendar.DAY_OF_MONTH, -1); 表示天减一.
 
日期的大小比较:
  String beginTime=new String("2017-06-09 10:22:22"); 
   String endTime=new String("2017-05-08 11:22:22"); 
1  直接用Date自带方法before()和after()比较
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  Date sd1=df.parse(beginTime);
  Date sd2=df.parse(endTime);
    System.out.println(sd1.before(sd2));
   System.out.println(sd1.after(sd2));
 
2  用String的compareTo()方法:
Integer i=beginTime.compareTo(endTime);
System.out.println(i);
返回正值是代表左侧日期大于参数日期,反之亦然,日期格式必须一致
 
3  转成date格式换成秒数比较秒数大小,getTime()方法
  Date sd1=df.parse(beginTime);
  Date sd2=df.parse(endTime);
  long long1 =sd1.getTime()
  long long2= sd2.getTime()
 
日期和string的互转方法:
1  Date转String
Date d=new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String ds=df.format(d);
 
2 String转Date
String ds=new String("2017-06-09 10:22:22"); 
Date sd=df.parse(ds);

posted @ 2022-04-16 09:21  zwbsoft  阅读(296)  评论(0编辑  收藏  举报