6.2. 条件文に代入文を含めるwhile文

使用テキスト(pdf形式) 6.2. 条件文に代入文を含めるwhile文
代入文を含めるwhile文のカタチ

      
while((n= Input . getInt( ) ) ! =0){
   繰り返し実行したい処理

このwhile文の中で

    • n= Input . getInt( )   …入力
    • n!=0          …入力した値のチェック

の二つを一度に行ってます。
この場合は「nに入力された値が0でない間繰り返す」ってこと。
「getIntメソッド」の場合は[Enterキー」をタイプするだけで、自動的に0が入力されるんだけど、なんて便利!



※同様に「enterキー」で入力される値

Inputクラスのメソッド Enterキーだけタイプした時入力される値
getInt( ), getChar( )などの整数 0
getDouble( ), getFloat( ) 0.0
getString( ) null

charには、こまっちゃうよ!

getString( )の時 「null」なんで、getChar( )の時もつい(私ってついってのが多いね)「あっ、これは『null』だ」って思っちゃうのよね・・・
「String」と「char」は私の中では文字なんだけどさ・・・(おいおい!)
気をつけなくっちゃ

例題

文字列を繰り返し入力し表示するが、nullが入力されたら終了するプログラムを書きなさい

import lib.Input;
public class Sample6_2{
    public static void main(String[] args){
        String s;
        while((s=Input.getString( )) ! = null){  …sがnullでない間繰り返す
            System.out.println(s);
        }
    }
}

テキストの練習問題の解答(P5)

<練習6-2>
1.

import lib.Input;
public class Exe6_2_1{
    public static void main(String[] args){
        double x;
        while((x=Input.getDouble())!=0){
            System.out.println(Math.sqrt(x));
        }
    }
}

2.

import lib.Input;
public class Exe6_2_2{
    public static void main(String[] args){
        String name;
        while((name=Input.getString()!=null){                …0ではなくて「null」って入れてね
            System.out.println("こんにちは"+name+"さん!"){
        }
    }
}