从另一个包含所有必需字段的部分中构造部分的最佳方法是什么(例如,YearMonth
中的LocalDate
?),我可以看到的一种方法是转换为完整的即时并返回,即
YearMonth ld2ym(LocalDate ld) {
return new YearMonth(ld.toDateTime(DateTime.now()));
}
但似乎应该有一种更有效的方法。
最佳答案
在YearMonth
类上,我们可以找到此方法,它似乎提供了适当的解决方案:
/**
* Parses a {@code YearMonth} from the specified string using a formatter.
*
* @param str the string to parse, not null
* @param formatter the formatter to use, not null
* @since 2.0
*/
public static YearMonth parse(String str, DateTimeFormatter formatter) {
LocalDate date = formatter.parseLocalDate(str);
return new YearMonth(date.getYear(), date.getMonthOfYear());
}