命令実行の文 その3 [Java]
前回は、ランダムで数字を生成する文について説明しました。
今回は、文字や整数の入力を受け付ける文について説明します。
主な用途としては、ユーザーに氏名や年齢を入力してもらうときに使用します。
文字列の入力を受け付ける
String input = new java.util.Scanner(System.in).nextLine();
整数の入力を受け付ける
int input =new java.util.Scanner(System.in).nextInt();
見比べてみてください。
非常に似通っています。異なる部分はStringとint 、nextLineとnextIntですね。
簡単におさらいしながらこの二つの違いについて説明していきます。
Stringとintは変数inputに対するデータ型です。収納する箱の形状を表しているのでしたね。
Stringが文字列を収納するデータ型であるのに対して、intは整数を収納するデータ型です。
ちなみに一文字だけ収納する場合はchar、大きな整数を収納する場合は long、小さな整数を収納する場合はshort(またはbyte)を使えばよかったのでしたね。
特に理由がない場合は、文字ならString、整数ならintで問題ありません。
ということで、今回の場合は文字の入力を受け付ける方にはデータ型としてStringを、整数の入力を受け付ける方にはデータ型としてintを使います。箱の中にいれるものを想定して、データ型(箱の形状)を決定すればよいわけです。
続いて異なる部分としてnextLineとnextIntが挙げられます。
これについては意味を考えればわかると思います。
文字列の入力を受け付けるのでLineを、整数の入力を受け付けるのでIntを用います。どちらかややこしくなった時は、意味のうえから考えても違いがはっきりすると思います。
この二つの文はよく使う文なのでそのまま覚えてしまうのが良いと思います。
命令実行の文は覚えきれないほどの数があります。実際にプログラムを作る際には、「こんな命令あったよな・・・」と思い出したり、調べたりしながら作業していくことになりますが、よく使う文に関しては覚えてしまった方が効率が良いと思います。
理由は二つあります。
①調べる手間が省ける
②表記の仕方に慣れる
からです。一見、無意味に見える文字の羅列ですが、その一つ一つにちゃんと意味があります。
詳しくはもっとJavaのことを勉強していくうちに少しずつわかっていくので、今の時点では形ごと覚えてしまいます。
さて、それでは実際にこの二つの文を使ったプログラミの例を見てみましょう。
public class Main{
public static void main(String[] args){
System.out.println("あなたの名前を教えてください。");
String name = new java.util.Scanner(System.in).nextLine();
System.out.println("あなたの年齢を教えてください。");
int age = new java.util.Scanner(System.in).nextInt();
System.out.println("こんにちは、"+age+"歳の"+name+"さん");
}
}
実行結果
あなたの名前を教えてください。ウィークリープログラマー
あなたの年齢を教えてください。
23
こんにちは、 23歳のウィークリープログラマーさん
このようなユーザーから入力を受け付けるプログラムを組んだ場合、プログラムは一時停止状態になります。
ユーザーが文字やら数字やらを入力するとそれが変数に代入されます。
命令実行の文は他にもたくさんありますが、あとはでてくる度にその都度説明することにします。
次回は演算子について説明します。
インクリメント演算子、ディクリメント演算子、そして、普段はあまり馴染みのない式の書き方です。
コメント 0