0
1

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.

シアトルコンサルティング株式会社Advent Calendar 2021

Day 12

【初学者向け】Scannerクラスの使い方

Last updated at Posted at 2021-12-11

この記事は、シアトルコンサルティング株式会社 Advent Calendar 2021の12日目の記事です。
こんにちは、シアトルコンサルティングの森です。
TeamTech Move the WorldをMissionに掲げ、日々全力で業務に取り組んでおります!
少しでも興味を持って頂けたら下記のサイトを覗いてみてください!

コーポレートサイト
https://www.seattleconsulting.co.jp/
Wantedly
https://www.wantedly.com/companies/seattleconsulting
よろしくお願い致します!

はじめに

今回はJavaSilverを取得する上で押さえておきたい概念「ポリモーフィズム」について、
実際の問題とともに説明していきます。
この記事を読んでポリモーフィズムに関する問題や考え方をマスターしていただければ幸いです。

はじめに

今回はJava初学者に向けたScannerクラスの使い方について記述いたします。
というのも私自身最初はScannerクラスの使い方がいまいち分からず、初学者用の参考書などにも書いていなかったためです。
また今回は最も使う今回は、Scanner next, Scanner nextInt, Scanner nextLineの3つについてお話します。
この記事が一人でも助けることができれば幸いです。

目次

1.Scannerクラスとは
[2.Scanner nextの使い方](#2-Scanner nextの使い方)
[3.Scanner nextIntの使い方](#3-Scanner nextIntの使い方)
[4.Scanner nextLineの使い方](#4-Scanner nextLineの使い方)
5.最後に

1. Scannerクラスとは

正規表現を使用してプリミティブ型および文字列の構文解析が可能な、単純なテキスト・スキャナです。
Scannerは、区切り文字のパターンを使用して入力をトークンに分割します。
デフォルトでは区切り文字は空白文字です。
結果として得られるトークンは、さまざまなnextメソッドを使用して、異なる型の値に変換できます。

[引用元]
Overview-Summery (https://docs.oracle.com/javase/jp/8/docs/api/java/util/Scanner.html)

簡単に言うと、入力された文章を読み取ることが出来るクラスでこちら側で型も決めることができるという事です。

2. Scanner nextの使い方

Scannerクラスのnextメソッドは次に入力された値をString型で読み取ります。
また次の空行までしか読み取らないのでその点は注意してください。
そのため一行全て読み取りたい場合や、数字をint型として読み取りたい場合には使えません。

逆に一単語や一数字しか入力されない場合は使用できます。


「太郎」と入力した場合

nextメソッド
public class Main {
    public static void main(String[] args) {

       Scanner sc = new Scanner(System.in);
       String f = sc.next();
       System.out.println("私の名前は"+f+"です。");
       
    }
}

結果

私の名前は太郎です。

となります。

また2文字以上入力する場合は繰り返し文と配列やリストを使用すると便利です。

3. Scanner nextIntの使い方

ScannerクラスのnextIntメソッドは次に入力された値をint型で読み取ります。
こちらもnextメソッド同様に次の空行までしか読み取らないのでその点は注意してください。
二つ連続で数値を読み取りたい場合はnextIntメソッドを連続して使用するか繰り返し文などを使ってみてください。

例1
「18」と入力した場合

nextIntメソッド
public class Main {
    public static void main(String[] args) {

       Scanner sc = new Scanner(System.in);
       int num = sc.nextInt();
       System.out.println(num);
       
    }
}

結果

18

となります。

例2
「18 13」と入力した場合(スペースを挟んでいます)

nextIntメソッド
public class Main {
    public static void main(String[] args) {

       Scanner sc = new Scanner(System.in);
       int numA = sc.nextInt();
       int numB = sc.nextInt();
       System.out.println(numA-numB);
       
    }
}

結果

5

となります。

4. Scanner nextLineの使い方

ScannerクラスのメソッドはnextLine次に入力された1行をString型で読み取ります。
1行であれば、すなわち改行されてなければ全て読み取ります。

例 
「ラーメン パスタ うどん」

nextLineメソッド
public class Main {
    public static void main(String[] args) {

       Scanner sc = new Scanner(System.in);
       int LineA = sc.nextLine();
       System.out.println("好きな食べ物は"+LineA+"です。");
       
    }
}

結果

好きな食べ物はラーメン パスタ うどんです。

となります。

5. 最後に

Scannerクラスはいろんな場所で使用しますし、初学者が腕試しに使用することも多いpaiza等でも使用するクラスなのでかならずマスターしましょう。
また次回は一行ではなく複数行にわたる読み込みをしていきたいと思いますのでそちらもご覧になってください。

0
1
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?