2016-06-08 28 views
6

voglio avere un'API che assomigliaConvert "durata" "Unità" per millisecondi

public static long toMillis (long duration, ChronoUnit unit) { 
    // magic duration to millis 
} 

toMillis(5, ChronoUnit.SECONDS); // 5000 

ovviamente non sto scrivendo in realtà toMillis ma questo è essenzialmente quello che sto cercando di fare.

+0

Potreste usare [ 'ChronoUnit # getDuration()'] (https://docs.oracle.com/javase/8/docs/api/java/ time/temporal/ChronoUnit.html # getDuration--) e poi convertirlo in millisecondi usando ['Duration # toMillis()'] (https://docs.oracle.com/javase/8/docs/api/java/time /Duration.html#toMillis--)? – Whymarrh

+2

Presumo che questo sia correlato all'API data/ora. Se stai solo cercando un'utilità di conversione delle unità, puoi usare 'TimeUnit.SECONDS.toMillis (duration)'. – shmosel

+0

@shmosel stranamente ho trovato questa API qui, e sarebbe servito al mio scopo, ma poi mi sono frustrato con "perché non riesco a capire come farlo con java.time" – xenoterracide

risposta

17

È possibile utilizzare Duration per questo:

Duration.of(5, ChronoUnit.SECONDS).toMillis()