2017-08-22 46 views
-1

我已经导入了joda libary,并且能够导入Easy Reader类。不过,我需要帮助格式正确,所以我可以计算在这之间的日子,是的,我与MM/dd/yyyy一起,但我使用了整数。我需要导入其他东西吗?我对乔达真的很陌生,所以请耐心等待,谢谢。一切似乎工作正常,但我找不到正确的语法,这将帮助我找到两个日期之间的差异,我找不到它。宣布开始日期和结束使用乔达时间?

import org.joda.time.DateTime; 
import org.joda.time.DateTimeZone; 
import org.joda.time.LocalDate; 
class starter{ 
public static void BdayPrgm(String args[]){ 

System.out.println("Please Enter Today's Month: "); 
     EasyReader month = new EasyReader(); 
     //this will indentify it as an INT, not a string. 
     //quest is a question btw. 
     todaysmon = month.readInt(); 

     System.out.println("What number is today?: "); 
     EasyReader currentday = new EasyReader(); 
     todayday = currentday.readInt(); 



     System.out.println("What is today's year?: "); 
     EasyReader todayyear = new EasyReader(); 
     year = todayyear.readInt(); 

     System.out.println(""); 

     System.out.println("What is your BdayMonth?: "); 
     EasyReader thatyear = new EasyReader(); 
     bdaymon = thatyear.readInt(); 

     System.out.println("What is your Bday #?: "); 
     EasyReader thatday = new EasyReader(); 
     thatgr8day = thatday.readInt(); 

     System.out.println("What is the bdayyear?: "); 
     EasyReader bdayyear = new EasyReader(); 
     bdayyr = bdayyear.readInt(); 


     int age; 
     age = year - bdayyr; 


     //we can get start date by putting test maybe? 
     DateTimeZone LA = DateTimeZone.forID("America/Los_Angeles"); 
     LocalDate start = new LocalDate(year,todaysmon,todayday); 
     LocalDate end = new LocalDate(year,bdaymon,thatgr8day); 

     int Days; 
     //code isn't compileing below. I don't know what I'm doing wrong. 
     Days.daysBetween(new LocalDate(start),new LocalDate(end)).getDays(); 

     //int days = d.getdays; 

     System.out.println(""); 

     System.out.println(CELEB1+" is going to be "+age+" years old in X days!"); 

}

} 
+1

仅供参考,[Joda-Time](http://www.joda.org/joda-time/)项目现在处于[维护模式](https:/ /en.wikipedia.org/wiki/Maintenance_mode),团队建议迁移到[java.time](http://docs.oracle.com/javase/8/docs/api/java/time/package-summary .html)类。请参见[Oracle教程](https://docs.oracle.com/javase/tutorial/datetime/TOC.html)。 –

回答

0

int Days; 
Days.daysBetween(new LocalDate(start),new LocalDate(end)).getDays(); 

应该像

int dayCount = Days.daysBetween(start, end).getDays(); 

因为startend已经LocalDate(多个) nd你想保存通话的结果。此外,您应该只需要一个EasyReader实例。并且,您需要添加

import org.joda.time.Days; 
+0

C:\ Users \ owner \ Desktop \ BdayAssignment> javac * .java starter.java:81:error:找不到符号 int dayCount = Days.daysBetween(start,end).getDays(); ^ 符号:可变天 位置:类起动机 1错误 C:\用户\所有者\桌面\ BdayAssignment>暂停 按任意键继续。 。 。它还没有编译过。我试图找到正确的参数,但它是错误的... –

+0

@ PYRO912'import org.joda.time.Days;' –

+0

它的工作原理。谢谢。忘了添加导入 –

相关问题