Java で入力から文字を取得する
Rupam Yadav
2023年10月12日
-
Java で
Scanner.next().charAt(0)
を使って入力から文字を取得する -
Java の
System.in.read()
を用いて入力から文字を取得する -
Java の
InputStreamReader()
を用いて入力から文字を取得する
この記事では、Java で文字を入力するために使用できるいくつか紹介します。Java で全文を入力して読み取ることはできますが、1 文字を読み取る方法はほとんどありません。以下の例では、いくつかの方法とその使い方を紹介します。
Java で Scanner.next().charAt(0)
を使って入力から文字を取得する
最初の例では、Scanner
クラスを使って入力を取得します。入力を char
として読み込むには scanner.next().charAt(0)
を使用します。charAt(0)
はスキャナから最初の文字を読み取ります。
import java.util.Scanner;
public class InputChar {
public static void main(String[] args) d {
Scanner scanner = new Scanner(System.in);
System.out.println("Please input a character: ");
char value = scanner.next().charAt(0);
System.out.println("Character: " + value);
}
}
出力:
Please input a character:
h
Character: h
Java の System.in.read()
を用いて入力から文字を取得する
次の例では、System.in
を直接用いて read()
メソッドを呼び出す。System.in.read()
は 1 バイトを読み込んで int
を返します。すべての文字は数値を表しているので、int
を文字に変換することができ、その逆も可能です。
以下では、System.in.read()
を用いて入力を読み込み、それを char
にキャストして文字型に変換します。
import java.io.IOException;
public class InputChar {
public static void main(String[] args) throws IOException {
System.out.println("Please input a character: ");
char value = (char) System.in.read();
System.out.println("Character: " + value);
}
}
出力:
Please input a character:
j
Character: j
Java の InputStreamReader()
を用いて入力から文字を取得する
もう一つの類似したメソッドは System.in
と同様に read()
メソッドを提供する InputStreamRead()
を利用するものです。この read()
メソッドを使って、int
を返す文字を入力し、以下の例で行ったように、それを char
にキャストできます。
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Reader;
public class InputChar {
public static void main(String[] args) throws IOException {
System.out.println("Please input a character: ");
Reader reader = new InputStreamReader(System.in);
int characterAsInt = reader.read();
char character = (char) characterAsInt;
System.out.println("Character: " + character);
}
}
出力:
Please input a character:
/
Character: /
著者: Rupam Yadav
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn関連記事 - Java Scanner
- 解決済み:Java Scanner NextLine Skips
- Java スキャナークラスの next()メソッドと nextLine()メソッドの違い
- Enter キーを押して Java で続行する
- Java でキーボード入力を取得する
- Java でスキャナをクリア