列挙型(enum)

列挙型

 列挙型    

列挙型 = 特定の選択肢(カテゴリ)を定義できるデータ型のこと。


■列挙型の宣言

【enum】これが列挙型。
【TargetFruit】という名前の新しいデータの種類。
【{None,Apple,Banana}】列挙型の値、選択肢。


private TargetFruit _targetFruit = TargetFruit.None;
これはターゲットの種類を保存する変数。
【_targetFruit】という変数を作成し型は先に記述した【TargetFruit】
デフォルトの値が【.None】

private string _targetTagName => _targetFruit switch
選択肢に応じてTag名を取得するプロパティ

【string _targetTagName】プロパティ名と型。
_targetTagNameという名前で、型をStringにする。(今欲しいのはTag名だから)

【=>】返り値 return と同じ。

【_targetFruit switch】_targetFruitの選択肢に応じてタグ名をswitchで変える。

【_ =>】Swithの最後にあるやつ。名前なしの列挙型だった場合(Apple,Bananaどちらも選択されていない場合)処理されなくなるため何か書いておく。

private const string AppleTagName = "Apple";      // リンゴのタグ名

【const】(コンスト、定数)「変更できない値」

【AppleTagName】変数名

【"Apple"】変数
switchで「AppleTagName」が呼ばれると「"Apple"」が呼ばれる。


Debug.Log(_targetTagName);
呼ばれた変数を表示させる。

処理の手順
①インスペクターの列挙型でAppleを選択する。
②実行
③列挙型が変数へ格納される。 TargetFruit.Apple
④プロパティで列挙型の選択肢に応じてTag名を定義した変数を選択。AppleTagName
⑤Tag名を定義した変数から値を取得し、プロパティが取得する。Apple
⑥Start関数からプロパティ名が表示される。Apple

Follow me!