参见英文答案 > Julian day of the year in Java 6个
我想得到一天的数量..即
1月1日是第1天
1月2日是第2天
2月1日是第32天,12月31日是第365天或366,具体取决于闰年
我使用了各种技术,如date1 – date2等…
但似乎没有任何东西对我来说不能正确的逻辑可能是…我想要的是计算并添加已经过去的月份的数量加上运行月份的天数,即今天是2012年9月21日是天数( 31(jan)29(feb)31(mar)30(apr)31(may)30(6月)31(7月)31(aug)20(sept))=第264天他们每次都会加上一加一一天过去…谢谢
mycode的
int year = Calendar.getInstance().get(Calendar.YEAR); GregorianCalendar gc = new GregorianCalendar(); gc.set(GregorianCalendar.DAY_OF_MONTH, 8); gc.set(GregorianCalendar.MONTH, GregorianCalendar.JUNE); gc.set(GregorianCalendar.YEAR, year); int numberofDaysPassed=gc.get(GregorianCalendar.DAY_OF_YEAR);
numberofDaysPassed给了我160,不受欢迎的结果
解决方法:
Calendar calendar = Calendar.getInstance();int dayOfYear = calendar.get(Calendar.DAY_OF_YEAR);
或者使用Joda-API
DateTime dt = new DateTime(); int dayOfYear = dt.getDayOfYear();
如果你需要’th’部分,请使用switch语句
switch (dayOfYear > 20 ? (dayOfYear % 10) : dayOfYear) { case 1: return dayOfYear + "st"; break; case 2: return dayOfYear + "nd"; break; case 3: return dayOfYear + "rd"; break; default: return dayOfYear + "th"; break; }
总结 以上是内存溢出为你收集整理的java – 今天是一年中的第n天[复制]全部内容,希望文章能够帮你解决java – 今天是一年中的第n天[复制]所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)