(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【Java】LocalDateTimeを用いた任意の時間に対しての足し算結果出力

スポンサーリンク

はじめに

例えば特定の時刻から5分毎の時刻を出力したい場合、Excelでは一つのセルに時刻を入れ隣のセルに「=A1+TIME(0,5,0)」と入れてドラックすれば値を取り出せます。

本内容をJavaプログラムでサクッと行うコードを紹介します。

サンプルコード

以下にて指定した日付と時刻のデータが格納されます。

LocalDateTime hoge = LocalDateTime.of(2222,2,22,22,22,22);

そのまま以下のように出力すると

System.out.println(hoge);

以下のように表示されます。

2222-02-22T22:22:22

冒頭に述べたように5分を足す場合は以下です。

hoge.plusMinutes(5);

ちなみに以下のようにplusXXXX(NUM)で一通りの演算ができます。

f:id:mtiit:20200301223944p:plain
一通りのplus,minusは揃っている

例えば以下のようにすれば

for(int i=0;i<=10;i++){
 System.out.print(hoge.plusMinutes(5*dd).toString().substring(11,16)+",");
}

さくっとCSV形式で時刻だけを取得できます。フォーマットが0埋めなので文字列処理をしやすいのもありがたいです。

22:22,22:27,22:32,22:37,22:42,22:47,22:52,22:57,23:02,23:07,23:12,23:17,23:22,23:27,23:32,23:37,23:42,23:47,23:52,23:57,00:02,

終わりに

Javaで日付や時刻を扱い方は色々ありますが「import java.time.LocalDateTime;」が利用できる環境であればLocalDateTimeはおススメです。
ご参考になれば幸いです。