1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Javaに初めて触れてみた③

Last updated at Posted at 2020-09-21

Javaに触れてみた

自己満の備忘録になりますのでご容赦ください。

いろいろ作ってみる

今までの知識を活かして、私が大ファンの広島東洋カープについて機能を作っていきたいと思います。

①監督の在任期間を表示する

番号を選択し、配列から取り出す機能にします。

Test.java
import java.util.Scanner;

class Test {
  public static void main(String args[]) {
    System.out.println("[1]達川監督\n[2]山本監督\n[3]ブラウン監督\n[4]野村監督\n[5]緒方監督\n[6]佐々岡監督\n1〜6の数字を選択してください。");
    Integer number = new Scanner(System.in).nextInt();

    String[] array = {"2000年", "2001年〜2005年", "2006年〜2009年", "2010年〜2014年", "2015年〜2019年", "2020年"};

    System.out.println(array[number - 1]);
  }
}
ターミナル
[1]達川監督
[2]山本監督
[3]ブラウン監督
[4]野村監督
[5]緒方監督
[6]佐々岡監督
1〜6の数字を選択してください。
4
2010年〜2014年

import java.util.Scanner;を書き忘れてしまい、Scannerが使えませんでしたので、注意します。
↓エラー文

ターミナル
Test.java:4: エラー: シンボルを見つけられません
    Integer number = new Scanner(System.in).nextInt();
                         ^
  シンボル:   クラス Scanner
  場所: クラス Test

②4択クイズ

4択から数字を選んで簡単な条件分岐させます。

Test2.java
import java.util.Scanner;

class Test2 {
  public static void main(String args[]) {
    System.out.println("2019年ドラフト1位の森下選手の出身大学は?\n[1]明治大学\n[2]法政大学\n[3]早稲田大学\n[4]立教大学");
    Integer number = new Scanner(System.in).nextInt();

    if (number == 1) {
      System.out.println("正解です!");
    } else {
      System.out.println("間違いです");
    }
  }
}
ターミナル
2019年ドラフト1位の森下選手の出身大学は?
[1]明治大学
[2]法政大学
[3]早稲田大学
[4]立教大学
2
間違いです
ターミナル
2019年ドラフト1位の森下選手の出身大学は?
[1]明治大学
[2]法政大学
[3]早稲田大学
[4]立教大学
1
正解です!

③4択クイズの応用

間違えたらその選択肢を減らす。

Test3.java
import java.util.Scanner;

import java.util.ArrayList;
import java.util.List;

class Test3 {
  public static void main(String args[]) {
    List<String> array = new ArrayList<String>();
    array.add("[1]明治大学");
    array.add("[2]法政大学");
    array.add("[3]早稲田大学");
    array.add("[4]立教大学");

    System.out.println("2019年ドラフト1位の森下選手の出身大学は?");
    System.out.println(array);
    Integer number = new Scanner(System.in).nextInt();


    if (number == 1) {
      System.out.println("正解です!");
    } else {
      array.remove(number - 1);
      System.out.println("間違いです");
      System.out.println("番号を選び直してください。");
      System.out.println(array);
    }
  }
}

import java.util.ArrayList;
import java.util.List;
を記入していないとエラーが出るので注意したいと思います。

ターミナル
2019年ドラフト1位の森下選手の出身大学は?
[[1]明治大学, [2]法政大学, [3]早稲田大学, [4]立教大学]
1
正解です!

↑正解のパターン

ターミナル
2019年ドラフト1位の森下選手の出身大学は?
[[1]明治大学, [2]法政大学, [3]早稲田大学, [4]立教大学]
2
間違いです
番号を選び直してください。
[[1]明治大学, [3]早稲田大学, [4]立教大学]

↑間違えたパターン
2の法政大学が表示されなくなりましたね。

とりあえず今回の記事はこんな感じで終わります。
この機能の改善点
①[[1]明治大学, [2]法政大学, [3]早稲田大学, [4]立教大学]みたいにターミナルに配列の中身を表示させる時に[]を表示支えないようにする。
②選び直してください。の表示が出たら数字を入力できるようにする。多分繰り返し処理でできると思う。
③問題を増やす。
④問題をランダムで出題できるようにする。
⑤答えをランダム表示にできるようにする。
今思いつく限りではこのような感じですね。次回の記事で書いていきたいと思います。

まだまだJavaのことはわかりませんので、頑張っていきたいと思います。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?