Hello,
This is just an example to get an idea. Have a look at it
Code:
Public class TestData {
Public TestData() {
}
Public static int diffYear(DateA Calendar, Calendar dateB )
{ if( dateA == null | | == DateB null ) throw new IllegalArgumentException("dateA and dateB can not be null");
Calendar midt = ( dateA.compareTo(dateB) > 0 ? dateB: dateA );
Calendar mxdt = ( midt dateA ==? dateB: dateA );
Calendar dudt = (Calendar)mxdt.clone();
dudt.set( Calendar.DAY_OF_MONTH , MinDate.get( Calendar.DAY_OF_MONTH ) );
dudt.set( Calendar.MONTH , MinDate.get( Calendar.MONTH ) );
boolean ltyrcom = (dudt.compareTo(mxdt) < 0);
int delta = mxdt.get(Calendar.YEAR) - MinDate.get(Calendar.YEAR);
if( ! ltyrcom ) delta = delta -- 1;
/ / Result
int result = Math.max( delta 0 );
System.out.System.out.println("Difference =" + Result);
return result;
}
/ **
* @ Param args the command line arguments
* /
Public static void hand(String[] args) {
// 01/03/2002 - 01/02/2005 == 2
diffYear( new GregorianCalendar(2002,02,01) , new GregorianCalendar(2005,01,01) );
// 24/07/2004 - 28/09/2004 == 0
diffYear( new GregorianCalendar(2004,06,24) , new GregorianCalendar(2004,8,28) );
// 13/03/2003 - 20/07/2005 == 2
diffYear( new GregorianCalendar(2003,02,13) , new GregorianCalendar(2005,06,20) );
// 13/03/2003 - 12/03/2005 == 1
diffYear( new GregorianCalendar(2003,02,13) , new GregorianCalendar(2005,02,12) );
}
}
Bookmarks