当前位置: 首页 > 面试题库 >

Java年度朱利安日

张建树
2023-03-14
问题内容

我已经在http://www.rgagnon.com/javadetails/java-0506.html上看到了“解决方案”
,但是它不能正常工作。例如,昨天(6月8日)应该是159,但它说是245。

那么,有人用Java解决方案来获取当前日期的三位数儒略日(不是儒略日-我需要今年的日子)吗?

谢谢!标记


问题答案:

如果您只需要一年中的某天,为什么不使用GregorianCalendars DAY_OF_YEAR字段呢?

import java.util.GregorianCalendar;
public class CalTest {
    public static void main(String[] argv) {
        GregorianCalendar gc = new GregorianCalendar();
        gc.set(GregorianCalendar.DAY_OF_MONTH, 8);
        gc.set(GregorianCalendar.MONTH, GregorianCalendar.JUNE);
        gc.set(GregorianCalendar.YEAR, 2010);
        System.out.println(gc.get(GregorianCalendar.DAY_OF_YEAR));
}

}

或者,您可以计算今天的儒略日期与今年1月1日之间的差额。但请务必在结果中加1,因为1月1日不是一年的第零天:

int[] now = {2010, 6, 8};
int[] janFirst = {2010, 1, 1};
double dayOfYear = toJulian(now) - toJulian(janFirst) + 1
System.out.println(Double.valueOf(dayOfYear).intValue());


 类似资料:
  • 我已经在网站上看到了“解决方案”http://www.rgagnon.com/javadetails/java-0506.html,但它不能正常工作。昨天(六月八日)应该是159,但它说是245。 那么,有没有人用Java解决方案来获取当前日期的三位数朱利安日(不是朱利安日——我需要今年的日期)? 谢谢!马克

  • 我正在使用Mochito,无法返回使用MarshallSendReceive进行的api调用的模拟响应。 以下是服务api调用(其中serviceRequest的类型为ValidateRequest,HeaderComposingCallback实现WebServiceMessageCallback) 这里是JUnit测试中的模拟,validateResponse是创建的对象,填充了值,但在运行下

  • 侯会计是个与众不同的人。比如有人向你提意见,认为你错了,你大概会想:我哪里会错呢?肯定是你自己错了吧,理由如此如此这般这般。但是如果一百个人向你提意见,认为你错了,你大概就会想:也许我真的错了。 但侯会计不是这样的,哪怕是全世界的人都向她提意见,她也会固执地认为全世界的人都不对,都不理解她。要是只有一个人向她提意见,又不一样了,她多半认为这人肯定跟自己有仇,一定要狠狠地打击报复。 抱着这样的心理,

  • 2019年2月初,CNCF 发布了2018年的年度报告,这是 CNCF 继2017年度报告之后,第二次发布年度报告,2017年度的报告只有区区14页,今年的报告长度增长了一倍达31页。下面我将带大家一起来深度解读下这份2018年的年度报告,一窥 CNCF 过去一年里在推广云原生的道路上取得的进展。 注:本文最后附上了2017年和2018年度的报告下载地址。 CNCF 年度报告涵盖的范围 在解读 C

  • 我基本上操作了这段代码http://svn.openstreetmap.org/applications/viewer/jmapviewer/src/org/openstreetmap/gui/jmapviewer/demo.java,以使用java Swing查看openstreetmap。