練習問題
自分の勉強用・忘備録として練習問題を作成しています。
No.01
実行結果の通りになるように出力してください。
- 現在の日時を持つ、Dateクラスのインスタンスを生成
- 取得した時刻を出力
提供コード
Java
import java.util.Date;
public class Main {
public static void main(String[] args) {
// ①
// ②
}
}
実行結果
Java
Fri May 03 11:59:42 JST 2024
// コンパイルした時間によって表示日時が変わります
Java
import java.util.Date;
public class Main {
public static void main(String[] args) {
Date now = new Date();
System.out.println(now);
}
}
Date型の変数であれば、中身には「日時情報」が入っており、出力すると人間が理解しやすい日付や時刻が表示される。
No.2
実行結果の通りになるように出力してください。
- 現在の日時を持つ、Dateクラスのインスタンスを生成
- 取得した日時情報を、long値で出力する
提供コード
Java
import java.util.Date;
public class Main {
public static void main(String[] args) {
// ①
System.out.println(); // ②
}
}
実行結果
Java
1714707830297
// 出力したタイミングによってlong値は異なります
Java
import java.util.Date;
public class Main {
public static void main(String[] args) {
// 現在の日時を持つ、Dateインスタンスを生成
Date now = new Date();
// 変数nowに入った日時情報(long値)を、getTime()メソッドで取得し、出力させる
System.out.println(now.getTime());
}
}
Dateインスタンスの内部に格納されているlong値(機械が理解しやすい形式)を取り出すためにはgetTime()を使う。
No.3
実行結果の通りになるように出力してください。
- 現在の日時を持つ、Dateクラスのインスタンスを生成
- Calendarクラスのインスタンスを生成する
- Date型の変数を、Calendar型に○○メソッドを用いて代入する
- 出力する
提供コード
Java
import java.util.Calendar;
import java.util.Date;
public class Main {
public static void main(String[] args) {
// ①Dateクラスのインスタンスを生成
// ②Calendarクラスのインスタンスを生成
// ③Date型の変数を、Calendar型に変換
System.out.println(); // ④
}
}
実行結果
Java
Fri May 03 14:10:24 JST 2024
// 出力するタイミングによって日時情報は変わります
Java
import java.util.Calendar;
import java.util.Date;
public class Main {
public static void main(String[] args) {
Date now = new Date();
// Calendarクラスのインスタンスを生成(Newは不要)
Calendar c = Calendar.getInstance();
// setTime()メソッドを使って、型を変換
c.setTime(now);
// getTime()メソッドで取得し、出力させる
System.out.println(c.getTime());
}
}
No.4
実行結果の通りになるように出力してください。
- Calendarクラスのインスタンスを生成する
- yearを取得する
- monthを取得する
- dayを取得する
- hourを取得する
- minuteを取得する
- secondを取得する
提供コード
Java
import java.util.Calendar;
public class Main {
public static void main(String[] args) {
// ① Calendarクラスをインスタンス化
int year = ②
int month = ③
int day = ④
int hour = ⑤
int minute = ⑥
int second = ⑦
System.out.println("今年は" + year + "年です。");
System.out.println("今月は" + month + "月です。");
System.out.println("今日は" + day + "日です。");
System.out.println("今は" + hour + "時です。");
System.out.println("今は" + minute + "分です。");
System.out.println("今は" + second + "秒です。");
}
}
実行結果
Java
今年は2024年です。
今月は5月です。
今日は3日です。
今は3時です。
今は6分です。
今は30秒です。
// 出力するタイミングによって日時情報は変わります
Java
import java.util.Calendar;
public class Main {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH) + 1;
int day = c.get(Calendar.DAY_OF_MONTH);
int hour = c.get(Calendar.HOUR);
int minute = c.get(Calendar.MINUTE);
int second = c.get(Calendar.SECOND);
System.out.println("今年は" + year + "年です。");
System.out.println("今月は" + month + "月です。");
System.out.println("今日は" + day + "日です。");
System.out.println("今は" + hour + "時です。");
System.out.println("今は" + minute + "分です。");
System.out.println("今は" + second + "秒です。");
}
}
monthは、0~11までの数字に、1月〜12月が割り当てられているため、そのまま表示させると、-1ヶ月のずれが生じます。
そのため+1をする必要があります。
参考
No.5
実行結果の通りになるように出力してください。
- Calendarクラスのインスタンスを生成する
- カレンダー型の変数の日付を、4月に指定する
- セットされた日付情報を、int型の変数に代入する
- 出力する
提供コード
Java
import java.util.Calendar;
public class Main {
public static void main(String[] args) {
// ① Calendarクラスをインスタンス化
// ② カレンダー型の変数に、Monthを設定する
// ③ セットした月の情報を取得する
System.out.println("ライブは" + ④ + "月に開催します。");
}
}
実行結果
Java
ライブは4月に開催します。
Java
import java.util.Calendar;
public class Main {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
c.set(Calendar.MONTH, 4);
int month = c.get(Calendar.MONTH);
System.out.println("ライブは" + month + "月に開催します。");
}
}
No.6
実行結果の通りになるように出力してください。
- SimpleDateFormatクラスをインスタンス化する
- 書式文字列:yyyy/MM/dd HH:mm:ss
- String型からDate型に変換する
- 日時:2024/05/03 05:30:20
- 出力する
提供コード
Java
import java.util.Date;
import java.text.SimpleDateFormat;
public class Main {
public static void main(String[] args) throws Exception {
// ①
// ②
System.out.println(③);
}
}
実行結果
Java
Fri May 03 05:30:20 JST 2024
Java
import java.util.Date;
import java.text.SimpleDateFormat;
public class Main {
public static void main(String[] args) throws Exception {
// SimpleDateFormatをインスタンス化。
SimpleDateFormat f = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
// parseメソッドを使って、String型からDate型に変換する
Date d = f.parse("2024/05/03 05:30:20");
System.out.println(d);
}
}
No.7
実行結果の通りになるように出力してください。
- SimpleDateFormatクラスをインスタンス化する
- 書式文字列:yyyy/MM/dd HH:mm:ss
- Dateクラスをインスタンス化
- Date型の変数を、指定の書式に変換する
- 出力する
提供コード
Java
import java.util.Date;
import java.text.SimpleDateFormat;
public class Main_0 {
public static void main(String[] args) throws Exception {
// ①
// ②
// ③
System.out.println("現在は" + ④ + "です");
}
}
実行結果
Java
現在は2024/05/03 18:25:52です
// 出力するタイミングによって日時情報は変わります
Java
import java.util.Date;
import java.text.SimpleDateFormat;
public class Main_0 {
public static void main(String[] args) throws Exception {
SimpleDateFormat f = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date now = new Date();
String s = f.format(now);
System.out.println("現在は" + s + "です");
}
}
No.8
実行結果の通りになるように出力してください。
提供コード
実行結果
No.9
実行結果の通りになるように出力してください。
提供コード
実行結果
No.10
実行結果の通りになるように出力してください。
【Java入門】Calendarクラスで日付を操作する方法(getメソッド,setメソッド,addメソッド,rollメソッド)