変数宣言の文とは、新たな変数を準備せよとコンピュータに指示する文のこと。
変数: データを格納するためにコンピュータ内部に準備する箱。データを入れたり取り出したりできる。変数の実体はコンピュータのメモリにある区画。変数に値を入れると実際にはメモリに値が書き込まれる。
//例
public class Main {
public static void main(String[] args) {
int age; //←変数宣言(ageとう変数を用意)
age = 30;
System.out.println(age);
}
}
/*上記の実行結果は、
30
*/
上記では、変数ageを宣言した後、変数ageに値「30」を入れ、それを取り出して表示する命令文になっている。
変数に値を入れることを、「代入」。取り出すことを「取得」するという。宣言後にのみ、代入と取得は可能となる。
命令宣言の文
型 変数名;
必ず、変数名(データを入れる箱の名前)と型(データを入れる箱の種類や大きさ)を指定する。
変数の名前
変数のみに関わらず、名前をつけることがあり、それらの名前として使える文字や数字の並びのことを「識別子」という。
変数名は基本自由だが、一定の制約がある。
・アルファベット、数字、アンダースコア、ドル記号などの組み合わせが一般的。平仮名/漢字は使わないのがベター。
・予約語を使用してはならない。約50個。(例.int,long)
予約語の詳細↓
https://www.javadrive.jp/start/const/index7.html#section1
・すでに利用している変数名は使ってはいけない。
・大文字/小文字、全角/半角の違いは区別されるので注意。(例.nameとNameは別物)
・小文字で始まる名詞形の名前をつける。複数の単語をつなげる場合は、2つ目以降の単語の先頭は大文字にする。(例.myAge)
・一文字a,oは避ける。
・格納される情報の内容を想像しやすく、分かりやすい変数名にする。
データ型
プログラムで扱うことのできるデータの種類のことを、「データ型(型)」という。
分類 | 型名 | 格納するデータ | 変数宣言の例 | 利用頻度 |
---|---|---|---|---|
整数 | byte | とても小さな整数 | byte glasses;//所持する眼鏡の数 | |
〃 | short | 小さな整数 | short age;//年齢 | |
〃 | int | 普通の整数 | int salary;//給与金額 | 高 |
〃 | long | 大きな整数 | long worldPeople;//世界の人口 | |
小数 | float | 少し曖昧でも良い整数 | float weght;//体重 | |
〃 | double | 普通の小数 | double pi;//円周率 | 普通 |
真偽値 | boolern | trueかfalse | boolern isError;//エラーか否か | 普通 |
文字 | char | 1つの文字 | char initial;//イニシャル1文字 | |
文字列 | String | 文字の並び | String name;//自分の名前 | 高 |
●整数を格納できる4つの型(byte、short、int、long)
これらの違いは、箱の大きさ(コンピュータ内部で準備されるメモリの量)にある。
格納可能な整数の範囲 | 型名 | 消費メモリ |
---|---|---|
±約128 | byte | 1バイト |
±約3.2万 | short | 2バイト |
±約21億 | int | 4バイト |
±約900京 | long | 8バイト |
※整数を代入したい場合、通常は「int型」を使えば問題なし!shortやbyteよりintの方が高速に処理できるコンピュータも多いため。
●小数を格納できる2つ型(float、double) 例)3.14、 -15.2
浮動小数点型と総称されることもある。
doubleの方がfloatより多くのメモリを消費するが、より厳密な計算を行える。
特別な事情がない限り、double型を使用する。
浮動小数点方式は、真に厳密な計算ができずわずかな誤差がある。そのため、金額の計算にはfloat、doubleを使ってはいけない。
●YESかNOかを格納できるboolean型
「YESかNOか」、「本当か嘘か」、「裏か表か」といった二者択一の情報を代入するための型。
真偽値型とも言う。
肯定的情報を意味する「true」、否定的情報を意味する「false」のどちらかの値のみを代入することができる。
●1文字だけ格納できる「char」型。文字列格納できる「String」型
charは、全角半角とわず、1文字を代入できる型。''で囲む。
Stringは、文字列(0文字以上の文字の集まり)を代入できる型。""で囲む。
※',"は必ず半角で!
//例
char zodiac; zodiac = '辰';
String name; name = "すがわら";
変数の初期化
変数宣言と同時に値を代入することを「変数の初期化」と言う。
変数の初期化
型 変数名 = 代入するデータ;
//例
int age = 22;
変数の再代入(上書き)
既に値が入っている変数に代入すると、古い値は消滅し、新しい値に内容が書き換わる。
public class Main {
public static void main(String[] args) {
int age = 20; //変数の初期化
System.out.println("私の年齢は" + age);
age = 31; //変数に再代入
System.out.println("…いや、本当の年齢は" + age);
}
}
/*実行結果
私の年齢は20
…いや、本当の年齢は31
*/
定数
上書きされたくない/内容を書き換えられたくない場合(内容がプログラムの動作中に書き換わる必要のない変数)に定数を利用する。
「final」を加えることで書き換え防止できる。final付きで宣言された変数を定数と呼ぶ。
定数の宣言
final 型 定数名 = 初期値;
//例
final double PI = 3.14;