特定の型を要素に持つArrayにプロパティやメソッドを追加したい 「特定の型を要素に持つArrayにプロパティやメソッドを追加したい」というケースがあると思います。 例えば、要素がInt型のArrayに対して合計値を取得するtotalというプロパティを追加するケースを考えます。 Swift 3.1 Swift 3.1では以下のようにジェネリックパラメーターと具象型が等しいという制約が書けるようになりました! extension Array where Element == Int { var total: Element { return reduce(0, +) } } let intArray = [1, 2, 3, 4, 5] print(intArray.total) // 15 Swift 3.1以前 これまではextension Array where Element == I
![[Swift 3.1] extensionでジェネリックパラメーターと具象型が等しい制約が書けるようになりました | DevelopersIO](https://cdn-ak-scissors.b.st-hatena.com/image/square/4b9b98d8423d1943cae402d21764bf51589e811b/height=288;version=1;width=512/https%3A%2F%2Fdevio2023-media.developers.io%2Fwp-content%2Fuploads%2F2014%2F11%2Flogo_swift_400x400.png)