Duration 不知道它toString()返回的是看parse里面就懂了
方法
abs()
addTo()
between()
compareTo() 返回1、0、-1
dividedBy()
equals() 只要时间相同就返回true
from() Period类的那个还没试
get() 涉及TemporalUnit类,这个没看懂,先放着
getNano()不知道为什么返回0,估计是我的电脑不支持,如果设置了,就会有数字。
getSeconds()
getUnits() 没有打印任何东西,不知道为什么,先放着
hashCode()
isNegative()
isZero()
minus() 涉及到TemporalUnit这个类,没看懂,先放着
minusDays()
minusHours()
minusMillis()
minusMinute()
minusNanos()
minusSeconds()
minusNanos()
minusSeconds()
multipliedBy()
negated()
of() 涉及TemporalUnit,先放着
ofDays()
ofHours()
ofMillis()
ofMinutes()
ofNanos()
ofSeconds()
parse()
plus() 涉及到TemporalUnit,先放着
plusDays()
plusHours()
plusMillis()
plusMinutes()
plusNanos()
plusSeconds()
subtractFrom() 这个减多了就不显示了,不会影响到上一个位时间
toDays()
toDaysPart() 看不出来和toDays()有什么区别,除了是java9之后新增的以外好像没有区别,先放着
toHours()
toHoursPart(),就是对24求余后的结果
toMillis()
toMillisPart() , 对1000求余
toMinutes()
toMinutesPart() 对60求余
toNanos()
toNanosPart() 对1000_000_000求余
toSeconds()
toSecondsPart() 对60求余
toString()
truncatedTo() 涉及到TemporalUnit类先放着
withNanos()
withSeconds() 不知道为什么,withSeconds()没有变化
import java.util.function.*;
import java.util.stream.*;
import java.util.*;
import java.math.*;
import static java.util.Calendar.*;
import java.time.*;
import java.time.temporal.*;
public class Test
{
public static void main(String[] args) throws Exception
{
//先练书上的例子
//Duration
Duration duration = Duration.ofSeconds(6000);
System.out.println("6000秒相当于"+duration.toMinutes()+"分");
System.out.println("6000秒相当于"+duration.toHours()+"小时");
System.out.println("6000秒相当于"+duration.toDays()+"天");
Clock clock = Clock.systemUTC();
System.out.println("clock原本的时间:"+clock.instant());
Clock clock2 = Clock.offset(clock,duration);
System.out.println("clock加上6000秒后的时间:"+clock2.instant());
//这里是文档中的方法,
Duration duration2 = Duration.ofSeconds(-6000);
System.out.println("-6000秒相当于"+duration2.toMinutes()+"分");
Duration duration3 = duration2.abs();
System.out.println("-6000秒的正副本是"+duration3.toMinutes()+"分");
LocalTime localtime = LocalTime.now();
System.out.println("localtime现在"+localtime);
localtime =(LocalTime) duration2.addTo(localtime);
System.out.println("addTo后"+localtime);
localtime = LocalTime.of(12,15,13);
LocalTime localtime2 = LocalTime.of(15,15,13);
duration = Duration.between(localtime,localtime2);
System.out.println("duration"+duration.toHours());
duration2 = Duration.ofSeconds(6000);
System.out.println("duration 和 duration2 比较"+duration.compareTo(duration2));
duration2 = Duration.ofSeconds(60000);
System.out.println