Last active
December 16, 2015 10:19
-
-
Save YukiYoshikawa/5418923 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package trial.yy.java8.client.time; | |
import java.time.DateTimeException; | |
import java.time.Duration; | |
import java.time.LocalTime; | |
import java.time.format.DateTimeFormatter; | |
/** | |
* java8 java.time.LocalTimeを試すためのサンプル | |
* User: yy | |
* Date: 13/04/19 | |
* Time: 22:30 | |
*/ | |
public class Java8LocalTimeClient { | |
public static void main(String[] args) { | |
// 現在時刻 | |
LocalTime time1 = LocalTime.now(); | |
System.out.println("time1 : " + time1); | |
// 時・分を指定(23時59分) | |
LocalTime time2 = LocalTime.of(23, 59); | |
System.out.println("time2 : " + time2); | |
// 時・分・秒を指定(0時1分2秒) | |
LocalTime time3 = LocalTime.of(0, 1, 2); | |
System.out.println("time3 : " + time3); | |
// 時・分・秒・ナノ秒指定(23時59分59秒10ナノ秒) | |
LocalTime time4 = LocalTime.of(23, 59, 59, 59); | |
System.out.println("time4 : " + time4); | |
// 12時30分20秒を生成 | |
LocalTime time5 = LocalTime.of(12, 30, 20); | |
System.out.println("time5 : "); | |
// 時・分・秒・ナノ秒を個別に取り出す | |
System.out.println(" 時:" + time5.getHour()); | |
System.out.println(" 分:" + time5.getMinute()); | |
System.out.println(" 秒:" + time5.getSecond()); | |
System.out.println(" ナノ秒:" + time5.getNano()); | |
// 秒・分・時間を加減算してみる | |
LocalTime time6 = LocalTime.of(12, 30, 20); | |
System.out.println(time6 + "の10秒後: " + time6.plusSeconds(10)); | |
System.out.println(time6 + "の30分後: " + time6.plusMinutes(30)); | |
System.out.println(time6 + "の1時間後: " + time6.plusHours(1)); | |
System.out.println(time6 + "の30秒前: " + time5.minusSeconds(30)); | |
System.out.println(time6 + "の3分前: " + time5.minusMinutes(3)); | |
System.out.println(time6 + "の13時間前: " + time5.minusHours(13)); | |
LocalTime time7 = LocalTime.of(11, 22, 33); | |
// 7分間を加算・減算してみる | |
System.out.println(time7 + "の7分後: " + time7.plus(Duration.ofMinutes(7))); | |
System.out.println(time7 + "の7分前: " + time7.minus(Duration.ofMinutes(7))); | |
// 時刻文字列からparseしてみる | |
LocalTime time8 = LocalTime.parse("12:34:56", DateTimeFormatter.ofPattern("HH:mm:ss")); | |
System.out.println("time8 : " + time8); | |
System.out.println("###"); | |
// 存在しない23時61分0秒とか指定するとDateTimeExceptionがスローされる | |
try { | |
LocalTime.of(23, 61, 0); | |
} catch (DateTimeException e) { | |
e.printStackTrace(); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment