見出し画像

08.固定値を使いこなす方法を知る

※無料で読めます

プログラミング未経験でも大丈夫?

絶対に変えたくない値を扱うには?

種類が限られる値を扱うには?

定数を使うには?

初めてjava を学習してみようという方/javaでコーディングできるけどやり方がいまいちわからない方に向けた記事です。

アジェンダ

それでは、いつものように私なりの言葉で、読んでいて眠くなることがないように、タイトルなども工夫していきます。

今回のゴール
・上書き禁止の値を扱える
・最初からずっと同じ値を扱える
・コードや区分を扱える

型や変数を使える前提となりますので、まだよく分からない方は下記の記事をご覧になってください。


1. これは生まれ出る時より、不変なる姿

変数のことは、「何でもなれる値」として説明しました。つまり、処理が実行されていく中で、最初の値から変わる可能性があるものです。

コーディングを進めていくと、「最初から最後まで値が変わらない」というものがあります。そういった時に使うべき方法があります。
もしも変なことをしようとしたら、エラーが出るようにしましょう。


「・・絶対に変えたくない値なら、変えないように書けばいいじゃん?」

という疑問が浮かぶかと思います。私も最初はそうでした。
コメントに「絶対に値を変えないで!」とか書いて、
そんなことをしたら、やった人を糾弾すれば良いのでは…と。

無理です・・。
人がやれることに「絶対やらない!」はないんです。

・・未来の自分が裏切ることもあります。ですので、その方法を知っていきましょう。方法は3つあります。

1. 上書き禁止 の値として定義する
2. 定数 として定義する
3. enum を定義する

正直どの方法でも良いのです。用途によって、使い分けましょう。


2. 最終形態で究極体

変数を進化させます。そのために使うのは、 final修飾子 というものです。

上書き禁止という意味のもので、アクセス修飾子の後、型の前につけます。

public class Hoge {
  public final String variable = "ずっとこの値";

  public void method(final String arg) {
    final int initialNum = 0;
  }
}

変数であれば、どこでも final をつけられます。


3. 究極体のモード変化

final を付ければ、変えることができない値を作ることができました。

こういった値のことを、定数 と呼びます。この定数を使う場面ですが、
多くはプロジェクトの中で唯一無二で固定のものです。

ですので、常に色んな場所から使われる可能性があります。その時に使いやすいように、派生形のような、発想の転換のような書き方をします。

public class Hoge {
  public static final String VARIABLE = "ずっとこの値で、Hoge.VARIABLE で利用する";
}

static final」を変数につけるだけです。
変数名の書き方は、他と区別して分かりやすいようにすべて大文字
複数単語でできた言葉であれば、_ で繋げます。
※ 「GOOD_MORNING」のような書き方は、スネークケース と呼ばれます


4. 究極体のジョグレス進化

例えば血液型のように、「A型、B型、O型、AB型」という種類を扱いたい場合があります。
定数を使うことで、やりたいことは実現できます。

ですが、もっとより良いやり方があります。 enum という方法です。

作り方は、class の部分がenum になったのとほぼ同じです。

public enum BloodType {
  A, B, O, AB;
}


さいごに

固定値を扱う場面は、学習をしている時ではあまり無かったように思えます。ですが、実際にコーディングをしていると使うことが多いのも事実です。特に、コード値や区分を扱うようなプロジェクトでは、enum を重宝します。

まるで手札や切り札を集めるように、できることをどんどん増やしていきましょう。この記事の内容としては、「より良い方法を選択する」ことを意識できると良いかと思います。

次回、「一つの変数が複数の値で構成されている時にどうすれば良いか」に関して説明をしていきたいと思います。よろしければご覧になってください。

有料パートに関して
・今回の記事のまとめを書いています
 ※必須ではないけれど知っておいた方が良い知識も添えています
・具体的な使い方を、コードも添えて補足説明しています

目次に戻る


ここから先は

2,570字 / 1画像

¥ 100

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

いただいたサポートは、今後の創作活動に役立てさせていただきます。