2016-08-04 3 views

답변

0

조다없이 시도해 보셨습니까? 이거?

public int getDays() { 
    Calendar calendar = Calendar.getInstance(); 
    calendar.setTime(startDate); 
    int yearsI = calendar.get(Calendar.YEAR); 
    int monthsI = calendar.get(Calendar.MONTH); 
    int daysI = calendar.get(Calendar.DATE); 
    calendar.setTime(endDate); 
    int yearsF = calendar.get(Calendar.YEAR); 
    int monthsF = calendar.get(Calendar.MONTH); 
    int daysF = calendar.get(Calendar.DATE); 
    int resultI = yearsI * 360 + monthsI * 30 + daysI; 
    int resultF = yearsF * 360 + monthsF * 30 + daysF; 
    return resultF - resultI; 
} 

는 DAYS360라는 클래스에서 인스턴스 메서드이며,이 생성자이다.

public Days360(Date startDate, Date endDate) { 
    this.startDate = startDate; 
    this.endDate = endDate; 
} 

다음과 같이 사용할 수 있습니다.

GregorianCalendar start = new GregorianCalendar(2011, 8, 12); 
GregorianCalendar end = new GregorianCalendar(2013, 3, 31); 
Days360 days360 = new Days360(start.getTime(), end.getTime()); 
int final_result = days360.getDays(); 

내가 그 정확히 엑셀 DAYS360 그 같은 구현 아니라는 것을 알고,하지만 난 날짜의 6 쌍의 그것을 테스트 (날짜 시작 - 종료 날짜를)하고 그것을 잘 작동합니다.

관련 문제