2017-08-01 93 views
-2

可有人向我解释,我在脚本中找到了Methode的功能:getQauntdate()方法的说明

public static String getQuantDate(final int quant) { 
     final SimpleDateFormat sdf = new SimpleDateFormat("MMdd"); 
     final int dayOfYear = quant; 
     final Calendar calendar = Calendar.getInstance(); 
     calendar.set(Calendar.DAY_OF_YEAR, dayOfYear); 
     final Date dat = calendar.getTime(); 
     return sdf.format(dat); 
    } 

我需要它平移,到golang,但我不明白的功能进行翻译!

+0

它将当前年份中的日期编号转换为包含月份和日期编号的字符串;例如,今天是2017年的第213天,当您向此方法传递213时,它将返回一个字符串“0801”(8月1日)。 – Jesper

+0

@Jesper是啊,它似乎很破碎。不接受一年作为输入,所以真的没有办法适当地处理闰年。 – captncraig

+0

@captncraig事实上,它总是使用当前年份,所以如果您在2月29日之后的闰年中调用此方法,它将给出与在相同输入值的非闰年中不同的结果。 – Jesper

回答

0

注释:

// format string. This returns MMdd 
    final SimpleDateFormat sdf = new SimpleDateFormat("MMdd"); 

    //redundant re-declaration of function parameter 
    final int dayOfYear = quant; 

    // make a date and set DAY_OF_YEAR to quant 
    final Calendar calendar = Calendar.getInstance(); 
    calendar.set(Calendar.DAY_OF_YEAR, dayOfYear); 

    // get date and return it in the correct format 
    final Date dat = calendar.getTime(); 
    return sdf.format(dat); 

貌似funtion需要一个号码,将其转换为一个日期,格式它。

1会产生0101

13会给0113

32会给0201

等等。

但目前尚不清楚,这是如何处理闰年和其他变量的。它看起来不像是非常高质量的代码,我建议分析你的问题,并提出一个好的规范。

+0

我现在明白多谢了! –