本文整理汇总了Java中java.time.LocalDateTime.truncatedTo方法的典型用法代码示例。如果您正苦于以下问题:Java LocalDateTime.truncatedTo方法的具体用法?Java LocalDateTime.truncatedTo怎么用?Java LocalDateTime.truncatedTo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类java.time.LocalDateTime
的用法示例。
在下文中一共展示了LocalDateTime.truncatedTo方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: truncate
import java.time.LocalDateTime; //导入方法依赖的package包/类
public static LocalDateTime truncate(LocalDateTime time, ChronoUnit unit,
int stepRate, DayOfWeek firstDayOfWeek) {
switch (unit) {
case DAYS:
return adjustField(time, DAY_OF_YEAR, stepRate).truncatedTo(unit);
case HALF_DAYS:
return time.truncatedTo(unit);
case HOURS:
return adjustField(time, HOUR_OF_DAY, stepRate).truncatedTo(unit);
case MINUTES:
return adjustField(time, MINUTE_OF_HOUR, stepRate)
.truncatedTo(unit);
case SECONDS:
return adjustField(time, SECOND_OF_MINUTE, stepRate).truncatedTo(
unit);
case MILLIS:
return adjustField(time, MILLI_OF_SECOND, stepRate).truncatedTo(
unit);
case MICROS:
return adjustField(time, MICRO_OF_SECOND, stepRate).truncatedTo(
unit);
case NANOS:
return adjustField(time, NANO_OF_SECOND, stepRate)
.truncatedTo(unit);
case MONTHS:
return time
.with(MONTH_OF_YEAR,
Math.max(
1,
time.get(MONTH_OF_YEAR)
- time.get(MONTH_OF_YEAR)
% stepRate)).withDayOfMonth(1)
.truncatedTo(DAYS);
case YEARS:
return adjustField(time, ChronoField.YEAR, stepRate).withDayOfYear(
1).truncatedTo(DAYS);
case WEEKS:
return time.with(DAY_OF_WEEK, firstDayOfWeek.getValue()).truncatedTo(
DAYS);
case DECADES:
int decade = time.getYear() / 10 * 10;
return time.with(ChronoField.YEAR, decade).withDayOfYear(1)
.truncatedTo(DAYS);
case CENTURIES:
int century = time.getYear() / 100 * 100;
return time.with(ChronoField.YEAR, century).withDayOfYear(1)
.truncatedTo(DAYS);
case MILLENNIA:
int millenium = time.getYear() / 1000 * 1000;
return time.with(ChronoField.YEAR, millenium).withDayOfYear(1)
.truncatedTo(DAYS);
default:
}
return time;
}