人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Javaで2006年7月13日の30日前を計算する関数
を教えてください。

●質問者: Bain
●カテゴリ:コンピュータ
✍キーワード:2006年 7月13日 Java 計算 関数
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● dev_zer0
●40ポイント ベストアンサー

下記にサンプルソースを書きます

import java.util.*;

class sample {

static public void main(String args[]) {

Calendar cal = new GregorianCalendar(2006, 7, 16);

System.out.println(cal.get(Calendar.YEAR) + "/" + cal.get(Calendar.MONTH

) + "/" + cal.get(Calendar.DATE));

cal.add(Calendar.DATE, -30); // ここで30日前の計算

System.out.println(cal.get(Calendar.YEAR) + "/" + cal.get(Calendar.MONTH

) + "/" + cal.get(Calendar.DATE));

}

}

実行すると

2006/7/16

2006/6/17

と表示されるはずです

◎質問者からの返答

回答有難うございます。

次の回答もほとんど同じような気がしますが、GregorianCalendarを使用している(推薦でしたっけ?)のでこちらを使わせてもらいます。


2 ● yo-kun
●35ポイント

java.util.Calendarクラスですね。


Calendar cal = Calendar.getInstance();

cal.set(2006, 7, 13);//2006年7月13日に設定

cal.add(Calendar.DATE, -30);//30日前に設定

int year = cal.get(Calendar.YEAR);

int month = cal.get(Calendar.MONTH) + 1;

int day = cal.get(Calendar.DATE);


getにおいて月は0?11の値を返すことに注意してください。

◎質問者からの返答

回答有難うございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ