あなたはJDK 8を使用していない場合は、JodaTimeを使用することができますが、JDK 8で、あなたがこのような何か書くことができます:出力がされます
public static void main(String[] args) {
LocalDateTime from = LocalDateTime.of(2017, 2, 5, 11, 18, 0);
LocalDateTime to = LocalDateTime.of(2017, 2, 5, 20, 20, 0);
long seconds = ChronoUnit.SECONDS.between(from, to);
System.out.println(String.format("%d:%02d:%02d", seconds/3600, (seconds % 3600)/60, (seconds % 60)));
}
を:午前九時02分○○秒
取得するにはLocalDateTimeDurationクラスを使用できますが、JDK 8のフォーマッタはありません。この特定の出力フォーマットが必要な場合は、サードパーティのライブラリを使用するか、独自のフォーマッタを作成します上記の例のように。
あなたが書くことができる期間を使用するには:
public static void main(String[] args) {
LocalDateTime from = LocalDateTime.of(2017, 2, 5, 11, 18, 0);
LocalDateTime to = LocalDateTime.of(2017, 2, 5, 20, 20, 0);
Duration duration = Duration.between(from, to);
long seconds = duration.getSeconds();
System.out.println(String.format("%d:%02d:%02d", s/3600, (s % 3600)/60, (s % 60)));
}
乾杯、A.
さてあなたは、時間をうまくするためのコードを持っているの...あなたは何分間試しましたか? (ヒント:60で何度も分割しないでください...) –
あなたは 'h1'であなたの時を過ごしています:' m1'と 'h2':' m2'なぜあなたはその値を使って数学? – AxelH
よく、私は最初に@AxelHという理由で数学を間違って試しました。その理由はこの形式に切り替えました – Saurabh