Javaプログラミング入門 – 文字列を読み取る

前回前々回では変数の宣言と代入、参照及び変数の型について説明を行った。変数を使用することによって数字や文字列などの様々なデータを一時的に格納することができる。前回まではソースコードの中に変数を宣言してそれを代入していたが、今回は実行するときに自分で指定したものを代入してみたい。

サンプルコード

以下のコードを「NameInput.java」で保存しよう。

[code lang=”java”]import java.io.*;

public class NameInput {
public static void main(String [] args) throws IOException {
System.out.println("名前を入力してください");
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
String name = bufferedReader.readLine();
System.out.println("こんにちは、" + name + "さん");
}
}[/code]

実行サンプル

[shell]$ javac NameInput.java
$ java NameInput
名前を入力してください
hoge
こんにちは、hogeさん[/shell]

解説

まず、1行目にこれまでになかった「import java.io.*」が確認できる。これは、このファイルで何らかのクラスを使用したい時に使われる((ここでは、java.ioのパッケージ内のすべてのクラスをインポートするということを意味している))。これについては、後ほど詳しく説明したい。

「public static void main」の部分にも見慣れないものが加わっている。カッコの後に「throws IOException」が加わっている。これは、「このメソッドではIOExceptionというクラスが投げられる可能性がある」ということを意味している。これは今回のコードの中に含まれているある処理が原因で、throws ○○を指定しなければならないのである。これも詳細については後ほど説明したい。

mainメソッドないではまず「名前を入力してください」と表示されたあと、「BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in))」でキーボード入力を受け付けるための準備をしている。

その次の行で文字列型のnameという変数を宣言して、先ほど準備したものを使ってキーボード入力を受け付けて、それで得た文字列を代入している。この部分が原因で、前述の「throws」の宣言が必要になる。

そして、「こんにちは、○○さん。」の○○に先ほど代入されたnameの内容が表示される。

次回は、プログラミングの基礎の一つである「条件分岐」について学習したい。

ウェブマスター。本ブログでITを中心にいろいろな情報や意見などを提供しております。仕事依頼や相談などについては、Contact Formよりお願いいたします。