Честно говоря, я новичок в создании и использовании расширений.
Я хотел создать категорию (расширение в swift 3.0), которую можно было бы использовать во всем приложении для выполнения повторяющихся операций с массивом.
Это то, что я увидел и понял во время исследования, я хотел создать расширение с различными методами, которые должны быть общими, а не на основе типа данных, необходимого для создания отдельных расширений.
Здесь, в приведенном выше примере, нам нужно будет создать одно расширение, если мы выберем расширение для определенного типа данных. Я хотел получить руководство, есть ли способ создать общую категорию (Расширение в Swift).
extension _ArrayType where Generator.Element == Int
extension Array where Element: Equatable
extension Array where Element == Int
extension _ArrayType where Generator.Element == Float
extension SequenceType where Self.Generator.Element: FloatingPointType
extension Array where Element: DoubleValue
extension Sequence where Iterator.Element == String
,и т.д...
Примечание. Короче говоря, мы можем считать, что я хочу выполнять действия на основе массива в одном расширении, а не просто создавать отдельное расширение для каждого типов данных в соответствии с вышеуказанным требованием.
extension Array { ... }
. Какая проблема у вас с этим? - person Rob Napier   schedule 18.04.2017[Any]
в первую очередь. - person Hamish   schedule 22.04.2017Array
, если вашElement
реализуетEquatable
... - person farzadshbfn   schedule 23.04.2017extension Array { ... }
не решает вашу проблему? Это расширение, которое будет применимо к массиву, состоящему из целых чисел, двойных чисел, чисел с плавающей запятой, словаря, строки и т. д.) любого из типов. - person Hamish   schedule 24.04.2017insert
,create
иupdate
, которые есть для массивов, но не будут< /i> вроде как) это будет довольно сложно. Поскольку массив являетсяstruct
, вы не можете расширить его и можете добавлять к нему методы только черезextension
, а не поля. Вероятно, вам придется реализовать общий класс со всеми необходимыми методамиArray
иsort
-функцией. - person Patru   schedule 27.04.2017