2016-06-08 176 views
6

我想有一個看起來像轉換「時間」,「單位」,以毫秒爲單位

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

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

我沒有實際編寫toMillis的API,但是這基本上就是我想要做的事。

+0

您可以用['ChronoUnit#getDuration()'](https://docs.oracle.com/javase/8/docs/api/java/ time/temporal/ChronoUnit.html#getDuration--),然後使用['Duration#toMillis()']將其轉換爲毫秒(https://docs.oracle.com/javase/8/docs/api/java/time /Duration.html#toMillis--)? – Whymarrh

+2

我認爲這與日期/時間API有關。如果你只是在尋找一個單位轉換工具,你可以使用'TimeUnit.SECONDS.toMillis(duration)'。 – shmosel

+0

@shmosel奇怪的是,我在這裏發現了API,它可以達到我的目的,但後來我對「爲什麼我不知道如何使用java.time做到這一點」感到沮喪。 – xenoterracide

回答

17

您可以使用Duration此:

Duration.of(5, ChronoUnit.SECONDS).toMillis() 
相關問題