Java入門|3章のまとめ

変数を理解すると、Javaのプログラムは「書くもの」から「動かすもの」へ変わっていく

この章では、Javaを学ぶうえで欠かせない、とても大切な土台をひととおり学んできました。第2章までは、画面に文字や数値を表示することで、Javaの基本的な書き方やプログラムの流れに慣れていくことが中心でした。そこから第3章では一歩進んで、値を記憶し、必要に応じて取り出し、変化させながら使っていくための仕組みを学びました。その中心にあるのが変数です。

変数は、最初のうちはただの箱のように見えるかもしれません。けれども、学習を進めるほど、その重要さがよくわかってきます。プログラムは、ただ決まった文字列を表示するだけではなく、入力された値を覚えたり、計算結果を保存したり、途中で内容を変更したりしながら動いています。そのたびに変数が使われています。つまり、変数はJavaの基本であると同時に、この先に続くさまざまな学習内容を支える中心的な仕組みでもあるのです。

この章では、変数そのものの意味だけでなく、変数につける名前である識別子、値の種類を表す型、変数を使えるようにする宣言、値を入れる代入、最初から値を入れておく初期化、あとから値を変更する考え方、さらにキーボードから入力された文字列や数値を扱う方法まで学びました。ひとつひとつは別々の内容に見えるかもしれませんが、実際にはすべてつながっています。

ここでは、3章で学んだ内容をひとつずつ整理しながら、何が大切だったのか、どこが今後につながるポイントなのかを丁寧に振り返っていきましょう。

変数は値を格納するための基本機能

この章で最初に学んだ大切な考え方は、変数には値を格納できるということです。

Javaのプログラムでは、数値や文字列などの値を、その場限りで使うだけでなく、いったん記憶してあとで使いたい場面がたくさんあります。たとえば、入力された値をあとから表示したいときや、計算に使いたいときなどです。そのようなときに使うのが変数です。

変数は、値を入れておくための箱のようなものとして考えると理解しやすいです。プログラムは、その箱に値を入れたり、箱の中の値を取り出したりしながら処理を進めていきます。この感覚は、この先もずっと大切になります。

変数があることで、プログラムは一時的に値を覚え、必要なときに再利用できるようになります。これはJavaに限らず、プログラミング全体で非常に重要な考え方です。

変数を使うには型と名前が必要だった

変数は、ただ箱を作ればよいわけではありません。Javaでは、変数を使う前に、その変数がどのような値を入れるものなのかを明確にする必要があります。そのために必要だったのが、型と名前です。

型は、その変数にどのような種類の値を入れるのかを表します。整数を入れるのか、小数を入れるのか、文字を入れるのか、あるいは true と false のような状態を入れるのかを決める役割があります。

名前は、その変数をプログラムの中で区別するために必要です。変数がたくさん登場する中で、それぞれの役割を見分けるためには、わかりやすい名前が欠かせません。

この2つがそろうことで、変数ははじめて意味を持って使えるようになります。名前は何のための変数かを表し、型は何を入れる変数かを表します。この組み合わせが、Javaの変数の基本です。

識別子は変数の名前として使う大切なルールだった

変数の名前として使う文字の組み合わせを、識別子と呼びました。

識別子にはルールがあり、何でも自由に名前にできるわけではありませんでした。数字で始めることはできず、Javaで特別な意味を持つキーワードも使えませんでした。また、大文字と小文字は区別されるため、見た目が似ていても別の名前として扱われることも学びました。

このようなルールがあることで、Javaは名前の意味を正しく判断できるようになっています。識別子は単なる飾りではなく、プログラムの中で変数を正しく扱うための大切な決まりです。

また、識別子はルールに合っているだけでなく、わかりやすい名前をつけることも重要でした。変数の中に何が入るのかが見てわかる名前にしておくと、コードの読みやすさが大きく変わります。これは今後コードが長くなってくるほど、ますます大切になっていきます。

型を学んだことで、変数には入れられる値の種類があるとわかった

変数には何でも自由に入れられるわけではなく、型によって入れられる値の種類が決まっていることも、この章の重要な学びでした。

boolean、char、byte、short、int、long、float、double といった基本型を見ながら、それぞれがどのような値を扱うのかを学びました。整数型、小数型、文字型、真偽値型のように、値の性質によって型が分かれていることが見えてきたはずです。

また、型にはサイズがあり、サイズが大きいほど一般的には表せる値の範囲が広くなることも学びました。この理解は、データ型をただ暗記するのではなく、なぜいくつもの型があるのかを考えるうえでとても役立ちます。

型を学んだことで、変数はただの箱ではなく、入れられるものに決まりのある箱だと理解しやすくなったはずです。これはJavaの厳密さであり、安全にプログラムを書くための大切な仕組みでもあります。

ビットとバイトの理解が型の見え方を変えてくれた

型のサイズを学ぶ中で、ビットとバイトの考え方にも触れました。

コンピュータは0と1で数値を表しており、その1桁分が1ビット、8ビットで1バイトになることを確認しました。そして、ビット数が増えると、表せる値の種類も増えることを学びました。これによって、なぜ short型が2バイトで一定の範囲を表せるのか、なぜ int型や long型ではさらに広い範囲を扱えるのかが見えやすくなりました。

この内容は最初は少し抽象的に感じるかもしれませんが、型のサイズと値の範囲が深く関係していることを理解するうえでとても大切でした。ビットとバイトの考え方は、この先メモリや内部表現を理解するときにもきっと役立ちます。

宣言によって変数を使えるようにした

変数を使うためには、最初に宣言が必要でした。

宣言とは、この型の、この名前の変数を使いますとJavaに伝えることでした。型名 識別子; という形で書き、これによって変数のための場所が用意されるイメージを学びました。

宣言の意味をしっかり理解しておくことはとても大切です。なぜなら、変数は思いついた名前をそのまま急に使えるわけではなく、あらかじめ準備しておかなければならないからです。これはJavaの基本的なルールであり、これから先も変わりません。

また、同じ型の変数をカンマで区切ってまとめて宣言できることも学びました。こうした書き方の違いも、今後コードを読むときや書くときに役立ちます。

代入によって変数に値を入れた

宣言しただけでは、変数はまだ使うための箱が用意された状態にすぎません。そこへ実際の値を入れる作業が、代入でした。

変数名 = 式; という形で書き、右側の値を左側の変数に入れるという意味であることを学びました。ここでは、= は数学の等しいという意味ではなく、値を代入する記号だということも大切なポイントでした。

この違いをきちんと意識できるようになると、プログラミングの考え方がかなり自然に理解しやすくなります。Javaでは、変数に値を入れ、その値をあとから使うという流れが基本になります。その入口として、代入の意味を理解したことはとても大きな一歩です。

初期化によって宣言と代入を1文にまとめられた

この章では、変数の初期化も学びました。

初期化とは、変数を宣言すると同時に最初の値を入れることです。宣言と代入を別々に書く代わりに、1文でまとめて書けるため、コードがすっきりし、値の入れ忘れも防ぎやすくなることを確認しました。

初期化は、ただ短く書くための工夫ではありません。変数の最初の状態をその場ではっきりさせるという意味でも、とても大切な書き方です。変数がどんな値から始まるのかが1か所でわかるため、コードを読む人にとってもわかりやすくなります。

この先も、最初から値が決まっている変数は初期化しておく場面がたくさん出てきます。その意味をこの段階で理解できたことは、とても大きな学びです。

変数の値はあとから変更できた

変数は一度値を入れたら終わりではなく、あとから別の値を代入することで内容を変更できることも学びました。

これは、変数が変数と呼ばれる理由そのものでもあります。値が変わることができるからこそ、プログラムの途中で状態を更新したり、計算結果を入れ直したり、入力に応じて違う内容を扱ったりできるのです。

同じ変数でも、ある時点では最初の値を持ち、そのあとでは別の値を持つことがあります。そのため、同じ変数を出力しても、出力のタイミングによって結果が変わることを確認しました。

この性質は、今後の計算処理や条件分岐、繰り返し処理などでも何度も使われる大切な考え方です。

変数どうしで値を受け渡しできることも学んだ

代入の右側に書けるのは、決まった数値だけではありませんでした。ほかの変数を書けば、その変数に入っている値を代入できることも学びました。

これは、変数が単なる名前ではなく、値を持つ存在であることをよく表しています。右辺に変数を書くと、その変数名そのものではなく、中に入っている値が使われます。この考え方がわかると、変数どうしの関係や値の流れが見えやすくなります。

この内容は、この先の式や計算、より複雑な処理を理解するための大切な土台になります。

型に合わない値は代入できないことも大切な注意点だった

変数は便利ですが、型に合わない値はそのままでは代入できませんでした。

たとえば、int型の変数には整数を入れる必要があり、小数をそのまま入れることはできませんでした。このことから、変数に値を入れるときには、変数の型と値の種類が合っているかを意識しなければならないとわかりました。

Javaでは、このような型のチェックがしっかり行われるため、ミスに気づきやすいというよさがあります。最初は少し厳しく感じるかもしれませんが、こうしたルールがあることで、プログラムは正しく安全に動きやすくなります。

キーボードから文字列を入力できるようになった

3章の後半では、キーボードからの入力も学びました。これは、プログラムがあらかじめ決まった値だけを扱うのではなく、実行時にユーザーが入力した内容を受け取れるようになる、とても大事な内容でした。

BufferedReader や readLine を使ったコードの形は少し長く感じたかもしれませんが、基本の流れはとてもシンプルでした。入力を待ち、Enterキーが押されたら、その1行分の文字列を変数に読み込む。この流れを理解することで、プログラムが使う人とやり取りできる感覚がつかめたはずです。

入力によって毎回違う結果を扱えるようになると、プログラムはぐっと実用的になります。この章で学んだキーボード入力は、その入り口としてとても大きな意味を持っています。

標準入力と標準出力の考え方もつながった

入力と出力を学ぶ中で、System.in が標準入力、System.out が標準出力と結びついていることも確認しました。

標準入力は通常キーボードを表し、標準出力は通常画面を表します。この考え方を知ることで、これまで使ってきた入力と出力のコードが、Javaの中でどのような位置づけになっているのかが見えやすくなりました。

これは単なる用語の知識ではなく、プログラムがどこから情報を受け取り、どこへ結果を出しているのかを理解するうえで大切な考え方です。

文字列を数値に変換する必要があることも学んだ

キーボードから数字を入力したとしても、最初は文字列として読み込まれることも重要なポイントでした。

そのため、整数として使いたいときには Integer.parseInt を使って int型の数値に変換し、小数として使いたいときには Double.parseDouble を使って double型に変換する必要があることを学びました。

ここで理解しておきたいのは、見た目が数字でも、入力直後は文字列だということです。この考え方がわかっていると、なぜ変換が必要なのかを自然に理解しやすくなります。

この先、入力された値を計算に使う場面はたくさん出てきます。そのたびに、この章で学んだ変換の考え方が役立ちます。

2つ以上の値を入力する応用にもつながった

最後には、2つ以上の数値を続けて入力する考え方にも触れました。

といっても、特別に難しいことをしているわけではなく、1回分の入力の流れを必要な回数だけ繰り返しているだけでした。入力を複数回受け取り、それぞれ別の変数に保存し、必要に応じて数値へ変換する。この流れを理解することで、より実用的なプログラムへ進む準備ができたといえます。

複数の値を扱えるようになると、計算、比較、条件分岐など、次の章で学ぶ内容ともつながりやすくなります。ここで入力の手順に慣れておいたことは、今後きっと大きな助けになります。

3章はこの先の学習全体を支える土台になっている

3章で学んだ内容は、一見すると基本的で小さな話の集まりに見えるかもしれません。けれども、実際にはどれもJavaの学習を進めるうえで欠かせないものばかりです。

変数があり、型があり、宣言があり、代入があり、初期化があり、入力された値を受け取り、必要に応じて変換しながら使う。この一連の流れは、この先に学ぶ計算、条件分岐、繰り返し、メソッド、オブジェクト指向といった内容のすべてにつながっていきます。

最初のうちは、変数のありがたみを強く実感しにくいこともあるかもしれません。けれども、コードを書く量が増え、扱う値が増え、処理が複雑になっていくほど、変数がなくてはならない存在であることがよくわかってきます。

図でふり返る「3章で学んだ変数の流れ」

この図では、3章で学んだ内容を大きな流れとして整理しています。最初に変数を宣言して用意し、次に値を代入または初期化し、その後で必要に応じて値を変更しながら使い、最後には入力や出力にもつなげていく、という関係が見えるようになっています。

こうして並べてみると、3章で学んだ内容がばらばらではなく、すべて変数を中心にしてつながっていることがよくわかります。変数は、この章だけの話ではなく、Java全体の基礎としてずっと使い続ける大切な考え方です。