有专门的对象处理,查下api吧。
package com.liming.samples;
import java.math.*;
import java.util.*;
import java.text.*;public class CalendarSample {
public CalendarSample() {
}
//public static void main(String args[]){
// Calendar c=Calendar.getInstance();
// Date d=new Date();
// c.setTime(d);
// System.out.print(c.get(c.DAY_OF_YEAR));
// }
// public static void main(String args[])
// {
// Date d2 = new Date(2004,8,13);
// Date d1 = new Date(2002,8,12);
// long tt = d2.getTime()-d1.getTime();
// long dddd = tt/86400000;
// System.out.println(dddd);
public static void main(String[] args)
{
//TRE t=new TRE();java.util.Date ddd = new java.util.Date();
Calendar cal = Calendar.getInstance();
cal.setTime(ddd);
System.out.println(cal.getTime());
System.out.println(cal.get(cal.DAY_OF_YEAR)); SimpleDateFormat bartDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String dt = "2004-05-17 12:30:20";
String dt2 ="2004-01-01 12:30:20";
java.util.Date now = new java.util.Date();
try {
java.util.Date date1 = bartDateFormat.parse(dt);
java.util.Date date2 = bartDateFormat.parse(dt2); int days = 0;
days = (int) ( (now.getTime() - date2.getTime()) / (24 * 60 * 60 * 1000)); System.out.println (days);
if (date1.compareTo(date2)>0){
//System.out.println (date1.getTime()-date2.getTime());
// System.out.println (date1.getDay()-date2.getDay());
}
else{
System.out.println ("false");} }catch (Exception ex) {System.out.println (ex);}
Calendar calendar=new GregorianCalendar(2004,6-1,1);
int max=calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
System.out.println("days:"+max);
}
}
package com.liming.samples;
import java.math.*;
import java.util.*;
import java.text.*;public class CalendarSample {
public CalendarSample() {
}
//public static void main(String args[]){
// Calendar c=Calendar.getInstance();
// Date d=new Date();
// c.setTime(d);
// System.out.print(c.get(c.DAY_OF_YEAR));
// }
// public static void main(String args[])
// {
// Date d2 = new Date(2004,8,13);
// Date d1 = new Date(2002,8,12);
// long tt = d2.getTime()-d1.getTime();
// long dddd = tt/86400000;
// System.out.println(dddd);
public static void main(String[] args)
{
//TRE t=new TRE();java.util.Date ddd = new java.util.Date();
Calendar cal = Calendar.getInstance();
cal.setTime(ddd);
System.out.println(cal.getTime());
System.out.println(cal.get(cal.DAY_OF_YEAR)); SimpleDateFormat bartDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String dt = "2004-05-17 12:30:20";
String dt2 ="2004-01-01 12:30:20";
java.util.Date now = new java.util.Date();
try {
java.util.Date date1 = bartDateFormat.parse(dt);
java.util.Date date2 = bartDateFormat.parse(dt2); int days = 0;
days = (int) ( (now.getTime() - date2.getTime()) / (24 * 60 * 60 * 1000)); System.out.println (days);
if (date1.compareTo(date2)>0){
//System.out.println (date1.getTime()-date2.getTime());
// System.out.println (date1.getDay()-date2.getDay());
}
else{
System.out.println ("false");} }catch (Exception ex) {System.out.println (ex);}
Calendar calendar=new GregorianCalendar(2004,6-1,1);
int max=calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
System.out.println("days:"+max);
}
}
这一句可能出现误差,比如2004-10-12 01:23:00 与 2004-10-11 20:56:00相减得到0,实现应该是相差1才对。
应该改为:
days = now.getTime() / (24 * 60 * 60 * 1000)- date2.getTime() / (24 * 60 * 60 * 1000));