概要
以前、指定した1つの文字列が複数の文字列のいずれかと等しいかどうかを判定する
拡張メソッドを公開しましたが、文字列以外の型でも使えるジェネリック版を作成しました
using System.Linq; /// <summary> /// ジェネリックの拡張メソッドを管理するクラス /// </summary> public static class GenericExtensions { /// <summary> /// オブジェクトが指定されたいずれかのオブジェクトと等しいかどうかを返します /// </summary> public static bool ContainsAny<T>(this T self, params T[] values) { return values.Any(c => c.Equals(self)); } }
enum JobType // ジョブの種類 { SOLDIER, // 王国兵士 SORCERER, // 魔法使い HUNTER, // 狩人 MERCENARY // 傭兵 } void Awake() { // ジョブを王国兵士に設定します var job = JobType.SOLDIER; // ジョブが王国兵士もしくは魔法使いかどうかを確認します if ( job.ContainsAny( JobType.SOLDIER, JobType.SORCERER ) ) { // .... } }