パソコン

Scannerを使うにはJavaパッケージのimportが必要だと、後のほうに書いてあった。そしてコマンドプロンプトの入力待ちは分かりづらい。

前回はこちら。

 前回の記事を「やろうと思ったけどできなかったよう」とTwitterにシェアしたところ、心の師匠から御助言頂きました。

 テキストに載ってません……と思ったら、Scannerのプログラム例の数ページ後に書いてありました……ともあれ、これで先に進めますから気にしないで行きましょう。昨日書いたコードの先頭にimportして……

//パッケージをインポート
import java.util.*;

//クラス名の設定と定型文
public class KaimonoP{
public static void main(String[] args){

//画面表示で入力を促す
System.out.println("牛乳はいくつありますか?");

//キーボードからの入力を受け取って変数に入れる
Scanner scanner =new Scanner(System.in);
String input=scanner.nextLine();

//入力された文字列に付け加えて表示
System.out.println("牛乳は"+input+"つあります");
}
}

 今回技術的な問題で、入力されるのは数字に限定していません。ですから「みっつ」などと入力されると「牛乳はみっつつあります」となってしまって少々問題ありますが、後で考えることにして先へ進みます。

 元のアメリカンジョークでの、奥さんから支持された買い物の条件は

・牛乳を1つ買ってくる
・卵があったら6つ買ってくる

でした。プログラミングの落とし穴をうまく再現するには……

入力された牛乳の数値が1以上だったら「牛乳を1つ買った」と表示。

さらに卵の個数を入力し、1以上だったら「牛乳を6つ買った」と表示。

 さて、数字を入力して処理するには……

import java.util.*;
public class KaimonoP{public static void main(String[] args){System.out.println("牛乳はいくつありますか?");

Scanner scanner =new Scanner(System.in);
String StringValue=scanner.nextLine();

//文字列変数を数値変数に変換
Integer intValue =Integer.valueOf(StringValue);

//変換された数値変数を出力
System.out.println("牛乳は"+intValue+"つあります");

//入力された数値が1以上の場合、牛乳を1つ買ったと表示。
if(intValue>=1){
System.out.println("牛乳を1つ買ってきました");
}
}
}

 これで、牛乳を買ってくることができました!しかし文字列が入力された場合errorになってしまいますし、牛乳がなかった場合の処理が書かれていないので入力された数値が0の場合「牛乳が0つあります」となってしまいますね。なんだか話がわき道にそれている気がしますが、Javaの勉強にはなっているのでよしとしましょう。それでは今回ここまで!

つづく!

ここから先は

0字

¥ 100

期間限定 PayPay支払いすると抽選でお得に!

この記事が気に入ったらサポートをしてみませんか?