[Dart / Flutter]ブール値のハッシュコードを取得する hashCode

オブジェクトの一意性を表現するためにハッシュコードが使われます。ブール値のハッシュコードを取得するには、hashCodeプロパティを使用します。

構文 ブール値のハッシュコードを取得する

int hash = boolValue.hashCode;

  • 変数:boolValueハッシュコードを取得するブール値。
  • 引数:なし
  • 戻り値:hash ブール値のハッシュコード。これは整数値です。

ハッシュコードは、あるオブジェクトやデータから、計算により一意な整数値を割り当てます。同じ内容のデータならば同じハッシュコードが生成され、異なる内容ならば別の数値になります。ブール値には、真と偽の2つの値しか存在しないため、ハッシュコードも2つの異なる整数値に対応します。

利用場面

  • ハッシュベースのコレクション(例:ハッシュマップ)でブール値をキーとして使用する際。

基本的な使用例

bool isTrue = true;
int hash = isTrue.hashCode;
print('trueのハッシュコード : $hash'); // 出力:trueのハッシュコード : 519018 (値は例)

ハッシュコードの比較

bool value1 = false;
bool value2 = false;
print(value1.hashCode == value2.hashCode); // 出力:true

ブール値をキーとして使用する

void main() {
  // ブール値をキーとするハッシュマップの作成
  var boolMap = {
    true: '真',
    false: '偽',
  };

  // ブール値 true に対応する値の取得
  var trueValue = boolMap[true];
  print('true に対応する値は: $trueValue'); // 出力:真

  // ブール値 false に対応する値の取得
  var falseValue = boolMap[false];
  print('false に対応する値は: $falseValue'); // 出力:偽
}

メリット
  • ブール値をハッシュベースのデータ構造で効率的に管理できる。
  • 一意性の確認が容易。
デメリット
  • ブール値が2つしかないため、ハッシュコードの利用場面は限られることが多い。

hashCodeプロパティは、ブール値のハッシュコードを取得する手段を提供して、ハッシュベースのデータ構造、一意性の検証に役立ちます。