本文整理汇总了Java中java.time.LocalDateTime.withNano方法的典型用法代码示例。如果您正苦于以下问题:Java LocalDateTime.withNano方法的具体用法?Java LocalDateTime.withNano怎么用?Java LocalDateTime.withNano使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类java.time.LocalDateTime
的用法示例。
在下文中一共展示了LocalDateTime.withNano方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getTruncatedLocalDateTime
import java.time.LocalDateTime; //导入方法依赖的package包/类
public LocalDateTime getTruncatedLocalDateTime(LocalDateTime value){
if(value == null){
return null;
}
int divideBy = (int) Math.pow(10, TOTAL_NUM_FRACTIONAL_SECONDS - getNumFractionalSeconds());
if(divideBy < 1){
throw new RuntimeException("numFractionalSeconds is greater or equal to 9");
}
int numNanoSeconds = value.getNano() / divideBy * divideBy;
return value.withNano(numNanoSeconds);
}
示例2: test_withNanoOfSecond_normal
import java.time.LocalDateTime; //导入方法依赖的package包/类
@Test
public void test_withNanoOfSecond_normal() {
LocalDateTime t = TEST_2007_07_15_12_30_40_987654321;
t = t.withNano(1);
assertEquals(t.getNano(), 1);
t = t.withNano(10);
assertEquals(t.getNano(), 10);
t = t.withNano(100);
assertEquals(t.getNano(), 100);
t = t.withNano(999999999);
assertEquals(t.getNano(), 999999999);
}
示例3: computeFirstResetTime
import java.time.LocalDateTime; //导入方法依赖的package包/类
protected static LocalDateTime computeFirstResetTime(LocalDateTime baseTime, int time, TimeUnit unit) {
if (unit != TimeUnit.SECONDS && unit != TimeUnit.MINUTES && unit != TimeUnit.HOURS && unit != TimeUnit.DAYS) {
throw new IllegalArgumentException();
}
LocalDateTime t = baseTime;
switch (unit) {
case DAYS:
t = t.plusDays(1).withHour(0).withMinute(0).withSecond(0).withNano(0);
break;
case HOURS:
if (24 % time == 0) {
t = t.plusHours(time - t.getHour() % time);
} else {
t = t.plusHours(1);
}
t = t.withMinute(0).withSecond(0).withNano(0);
break;
case MINUTES:
if (60 % time == 0) {
t = t.plusMinutes(time - t.getMinute() % time);
} else {
t = t.plusMinutes(1);
}
t = t.withSecond(0).withNano(0);
break;
case SECONDS:
if (60 % time == 0) {
t = t.plusSeconds(time - t.getSecond() % time);
} else {
t = t.plusSeconds(1);
}
t = t.withNano(0);
break;
}
return t;
}
示例4: makeDatesEven
import java.time.LocalDateTime; //导入方法依赖的package包/类
private List<LocalDateTime> makeDatesEven(List<LocalDateTime> dates, LocalDateTime dateTime) {
// If the dates contain more dates than just the lower and upper bounds, make the dates in between even.
if (dates.size() > 2) {
List<LocalDateTime> evenDates = new ArrayList<>();
// For each interval, modify the date slightly by a few millis, to make sure they are different days.
// This is because Axis stores each value and won't update the tick labels, if the value is already known.
// This happens if you display days and then add a date many years in the future the tick label will still be displayed as day.
for (int i = 0; i < dates.size(); i++) {
dateTime = dates.get(i);
switch (currentInterval.getInterval()) {
case YEARS:
// If its not the first or last date (lower and upper bound), make the year begin with first month and let the months begin with first day.
if (i != 0 && i != dates.size() - 1) {
dateTime.withMonth(1);
dateTime.withDayOfMonth(1);
}
dateTime.withHour(0);
dateTime.withMinute(0);
dateTime.withSecond(0);
dateTime.withNano(6000000);
break;
case MONTHS:
// If its not the first or last date (lower and upper bound), make the months begin with first day.
if (i != 0 && i != dates.size() - 1) {
dateTime.withDayOfMonth(1);
}
dateTime.withHour(0);
dateTime.withMinute(0);
dateTime.withSecond(0);
dateTime.withNano(5000000);
break;
case WEEKS:
// Make weeks begin with first day of week?
dateTime.withHour(0);
dateTime.withMinute(0);
dateTime.withSecond(0);
dateTime.withNano(4000000);
break;
case DAYS:
dateTime.withHour(0);
dateTime.withMinute(0);
dateTime.withSecond(0);
dateTime.withNano(3000000);
break;
case HOURS:
if (i != 0 && i != dates.size() - 1) {
dateTime.withMinute(0);
dateTime.withSecond(0);
}
dateTime.withNano(2000000);
break;
case MINUTES:
if (i != 0 && i != dates.size() - 1) {
dateTime.withSecond(0);
}
dateTime.withNano(1000000);
break;
case SECONDS:
dateTime.withSecond(0);
break;
}
evenDates.add(dateTime);
}
return evenDates;
} else {
return dates;
}
}