welcome: please sign in
location: "キーボードからの入力"の差分
5と6のリビジョン間の差分
2011-10-15 03:03:28時点のリビジョン5
サイズ: 1739
編集者: masahiko
コメント:
2012-03-22 01:47:25時点のリビジョン6
サイズ: 2251
編集者: masahiko
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 58: 行 58:
----
=== 演習 ===

整数値を1つ入力し、
その階数のビルの絵を表示するプログラム(Lesson4.java)を作成しなさい。

実行例に示すように階数の表示を含めること。

 . {{attachment:Lesson4-2.png}}

 . 入力した値にかかわらずビルの壁はまっすぐなこと。階によって太くなったりしてはいけない。

上級
 . 同じことを、printfの"%d"変換を用いないで、文字列の処理を使って行いなさい。

キーボードからの入力

Javaではあらかじめ用意されているクラスを利用してプログラムを作成することが多い。

  • クラスはパッケージに分けて用意されている。

キーボードからの入力を数値などに切り分けて読み取るには Scannerクラスを使います。

  • Scannerクラスはjava.utilパッケージ内にある。


使い方

入力ストリームに対して「つぎの入力を受け取る」という処理を行う。

初期化

処理する対象をオブジェクトとして割り当てます。

  1. Scannerクラスの変数sを宣言します。
  2. 標準入力(System.in)を引数としてScannerクラスのオブジェクトを生成します。
  3. 生成したオブジェクトをsに割り当てます。
    Scanner s = new Scanner(System.in);

次の整数値を読む

Scannerクラスのオブジェクトに対してnextIntメソッドを行うと 値が返されます。

  • i = s.nextInt();

入力した値を2倍して表示するだけのプログラムです。

Scannerクラスを利用するときは、1行目のimport文が必要です。

  •    1 import java.util.*;
       2 
       3 public class Sample1
       4 {
       5         public static void main(String[] args)
       6         {
       7                 int a, k;
       8                 Scanner s = new Scanner(System.in);
       9                 System.out.print("input a ");
      10                 a = s.nextInt();
      11                 k = a * 2;
      12                 System.out.println( k );
      13         }
      14 }
    


Scannerクラスを使って整数以外のデータを入力することもできます。

その他の機能など 詳細はScannerクラスのAPIを調べてください。 調べ方は後日解説。


演習

整数値を1つ入力し、 その階数のビルの絵を表示するプログラム(Lesson4.java)を作成しなさい。

実行例に示すように階数の表示を含めること。

  • Lesson4-2.png

  • 入力した値にかかわらずビルの壁はまっすぐなこと。階によって太くなったりしてはいけない。

上級

  • 同じことを、printfの"%d"変換を用いないで、文字列の処理を使って行いなさい。

キーボードからの入力 (最終更新日時 2012-03-22 01:47:25 更新者 masahiko)