どうもこんにちは!
サバ缶(@tech_begin)です。
この記事では、変数に関することを学んでいきます。
変数はどのプログラミング言語でも使われる基礎中の基礎です。
一度で覚える必要ありません。繰り返し読んで、試して定着させていきましょう💪
変数とは?
データを格納するための箱のようなものです。
コンピュータ内部で数字や文字などプログラムで使用するデータを出し入れすることができます。
もちろん実体は箱ではなく、コンピュータのメモリにある区画です。
メモリに関しては以下の記事で詳しくまとめています!
変数(箱)に値(データ)を代入(入れること)すると、実際にはメモリに領域が確保され、値が書き込まれます。
ちょっと難しい話になりましたね。
さて、これから解説に入りますが、以下の3つについて見ていきます。
- 変数の宣言
- 変数の初期化
- 変数の上書き
それでは、実際に変数を使ってみましょう!
変数の宣言
変数は「こういう箱を準備しますよ!」という宣言が必要です。
勝手に「userという変数を使います」なんてことはできません。
コンピュータも「え?(メモリに確保されていないから)userっていう変数はないよ?」とエラーを出します。
以下は、番号を表示させるプログラムです。
public class Main {
public static void main(String[] args) {
int number;
number = 20;
System.out.println(number);
}
}
// 【実行結果】
// 20
コードの解説
はじめ2行目は、Javaのプログラムを実行するために必要なものです。
追々、こちらの内容についても説明していきます。
しばらくは、この中身での処理に注目していきましょう。
public class Main {
public static void main(String[] args) {
// 中略
}
}
では、中身を見ていきます。
public class Main {
public static void main(String[] args) {
int number;
number = 20;
System.out.println(number);
}
}
int number
number
という変数(箱)を宣言(準備)
number = 20
number
という変数(箱)に20を代入(入れる)
System.out.println(number)
number
変数(箱)の値(中身)を画面に表示する
int
というのは「データの型」を表しています。
変数にはデータを入れる種類や大きさなど様々な種類があります。
変数宣言
変数名と型の2つを必ず指名する必要がある。
// 型 変数名;
int number;
変数名の付け方
変数を宣言するとき、名前をつける必要があることはお伝えしました。
なぜ名前をつけるのでしょうか?
私たち人間も名前をつけますよね。言い方が悪いですが、個人を識別するためです。
変数名も、個々の変数を識別するために使用します。
基本的な命名ルール
名前を何にするか基本的には自由ですが、通常は以下の組み合わせでつけます。
- アルファベット(abc..ABC..)
- 数字(123..)
- アンダースコア(_)
- ドル記号($)
基本的には上記の認識で問題ありませんが、詳しく知りたいという方は以下をご覧ください!
変数名をつける際の注意点
注意点は、以下の4つがあります。
- 予約語(禁止されている単語)は使用できない
- すでに使用している変数名は使用できない
- 大文字・小文字、全角・半角の違いは区別される
- 小文字で始まる名前をつけるのが好ましい
予約語(禁止されている単語)は使用できない
放送業界でいう「禁止用語」みたいなものですね。
Javaが独自に保持している単語のことを「予約語」と言います。
データ型や修飾子は変数名に使うことができません。
すでに使用している変数名は使用できない
先に述べた通り、「変数名は識別するため」につけています。
その識別子が同じだと、私たち人間はもちろん、コンピュータも判別できなくなってしまうので禁止されています。
大文字・小文字、全角・半角の違いは区別される
私たち人間にとっては特に違いのないようなことです。
しかしコンピュータにとっては、全く異なる文字として見なされます。
ですので「name」と「Name」は全く別の変数として扱われます。
小文字で始まる名前をつけるのが好ましい
Javaに限らず、複数の言語において慣習的に「変数には小文字で始まる名詞形の名前をつける」というものがあります。
ちょっと難しい言い方になりましたが、とりあえず「a」や「n」など1文字の変数名は避けましょう。
1文字の変数名は、読みにくいコードへ繋がる原因となります。
格納されているデータの内容が想像しやすく、読み取りやすい名前にするよう心がけましょう。
コードの読みやすさについては、以下の記事でも紹介しています。
変数の初期化
変数の宣言では、値を入れる箱を準備しただけです。
変数を使うために値を入れることを「代入」と呼びます。
この宣言と代入を同時に行うことを「初期化」と言います。
1行にまとめて書くことができるので、現場ではほとんどがこの書き方です。
場面によっては、宣言だけして後から代入するというケースもあります。
int number; // 宣言
number = 10; // 代入
int age = 24; // 初期化
変数の初期化
変数の宣言と代入を同時に行うこと。
// 型 変数名 = 代入するデータ;
int number = 20;
変数の上書き
変数は文字の通り、「変わる(変えられる)数」です。
一度代入(または初期化)された変数は、後から上書きができます。
以下のコードを書いてみて、変数の中身が変わることを確認してみましょう!
int number = 10;
System.out.println("初期化後のnumber: " + number);
number = 20;
System.out.println("上書き後のnumber: " + number);
変数の上書き
すでに値が入っている変数に代入すると、もともとの値は消え、新しく代入した値に置き換えられる。
まとめ
長文、お疲れ様でした。
今回は、int型だけを使用してきました。
次の記事では、データの型について解説していきます!
「たくさんあって覚えられないよ!」という方。
大丈夫です。最初から全て完璧覚えられる人なんていません。
私なんか変数に1年以上つまづいていました(笑)
そういう部分は、独学の辛いところですよね。
私のTwitterで、ご相談をいつでも受け付け中です!
お気軽にご連絡ください🙌