ハッシュからキーと値を取り除く
【開発環境】
OS:Win11(64ビット)
Ruby 3.0.1
VSCodeバージョン: 1.57.1
【Hashクラスのオブジェクトに含まれるキーと値を取り除く方法】
Hashクラスのdeleteメソッドを使う
・書式
Hashオブジェクト.delete(key)
引数;
key 削除したい値に対応するキー
戻り値:
取り除かれた値。キーが存在しなかった場合はnil
例文
h = {"suzuki" => 87, "itou" => 76, "yamada" => 69}
h.delete("itou")
この場合、キーが「itou」である「76」と言う値が(キーと一緒に)ハッシュから取り除かれます。
また指定したキーがハッシュに存在しなかった場合の処理を記述するブロック付きのメソッドも利用できます。
Hashオブジェクト.delete(key) {|key| ... }
引数;
key 削除したい値に対応するキー
戻り値:
取り除かれた値。キーが存在しなかった場合はブロック内を実行した結果
ハッシュからキーに対応する値を取り除く点は同じですが、キーがハッシュ内に存在しなかった場合にはブロック内を実行した結果を返します。
・例文
h = {"suzuki" => 87, "itou" => 76, "yamada" => 69}
h.delete("kudou"){|key|
print("#{key} は存在しません¥n")
}
サンプルプログラム