JAVA

【JAVA】DateとSimpleDateFormatを使って日付比較

2013年12月18日

jspで指定日付以降になると表示するプログラムを作ってみました。
(JSPと書きながらほぼJAVAですが……)

初歩的なことだけどよく忘れるので。
JSPで使う場合だとimportも手打ちなので、どこに格納しているのか忘れてしまうんですよね……w

DateとSimpleDateFormatを使えば簡単にできます。

比較対象として今回はA.after(B)を使ってみました。

前後一つだけの比較ならafterかbefore。両方及び同値も欲しいならcompareToを使えばいいですね。
ただ、afterとbeforeの戻り値はboolean、compareToはintなのでif文等で使う場合は注意が必要です。

<%@ page import="java.util.Date"%>
<%@ page import="java.text.SimpleDateFormat"%>
<% //2013年12月18日 00:00:00以降表示
Date now = new Date();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date indication = format.parse("2013-12-18");
if(now.after(indication)){ %>
<p>2013年12月18日 00:00:00以降に表示されます。</p>
<%} %>

逆にB以前だとA.before(B)を使います。

戻り型 メソッド 説明
booleanA.after(B)A>Bの時true
booleanA.before(B)A<Bの時true
intA.compareTo(B)A<Bの時-1
A=Bの時0
A>Bの時1

参考

-JAVA
-, , , , , ,