どうも、ちょげ(@chogetarou)です。
辞書の最大値を取得する方法を紹介します。
方法

辞書の最大値を取得する方法は、3つあります。
キーの最大
1つ目は、キーの最大値を取得する方法です。
まず、辞書のkeysプロパティにアクセスします。
そして、keysプロパティからmaxメソッドを呼び出します。
dict.keys.max()
上記のmaxメソッドは、辞書のキーの最大値を返します。
使用例
let nums = [
1 : "one",
2 : "two",
3 : "three",
10 : "ten",
]
print(nums.keys.max()!) //10
値の最大値
2つ目は、値の最大値を取得する方法です。
まず、辞書からvaluesプロパティにアクセスします。
そして、valuesプロパティからmaxメソッドを呼び出します。
dict.values.max()
上記のmaxメソッドは、辞書の値の最大値を返します。
使用例
let numbers = [
"one" : 1,
"two" : 2,
"three" : 3,
"four" : 4,
"five" : 5,
]
print(numbers.values.max()!) //5
ペア(キーと値)の最大値
3つ目は、キーと値のペアの最大値を取得する方法です。
まず、辞書からmaxメソッドを呼び出します。
maxメソッドのクロージャーには、2つの引数を持たせます。
そして、maxメソッドのクロージャーで最大値を求めるための比較式を返します。
dict.max { (a, b) in 比較式 }
上記のmaxメソッドは、比較式から算出した辞書の最大値を要素ごとタプルで返します。
使用例
let numbers = [
"one" : 1,
"two" : 2,
"three" : 3,
"four" : 4,
"five" : 5,
"ten" : 10
]
print(numbers.max { (a, b) in a.value < b.value }! ) //(key: "ten", value: 10)
まとめ
辞書の最大値を取得する方法は、次の3つです。
- キーの最大値を取得する方法
- 値の最大値を取得する方法
- ペアの最大値を取得する方法
コメント