How can I merge two arrays into a dictionary?

前端 未结 6 1754
青春惊慌失措
青春惊慌失措 2020-12-16 14:39

I have 2 arrays:

    var identic = [String]()
    var linef = [String]()

I\'ve appended them with data. Now for usability purposes my goal

6条回答
  •  渐次进展
    2020-12-16 14:53

    Use enumerated():

    var arrayOne: [String] = []
    var arrayTwo: [String] = []
    
    var dictionary: [String: String] = [:]
    
    for (index, element) in arrayOne.enumerated() {
        dictionary[element] = arrayTwo[index]
    }
    

    The pro approach would be to use an extension:

    extension Dictionary {
        public init(keys: [Key], values: [Value]) {
            precondition(keys.count == values.count)
    
            self.init()
    
            for (index, key) in keys.enumerate() {
                self[key] = values[index]
            }
        }
    }
    

    Edit: enumerate()enumerated() (Swift 3 → Swift 4)

提交回复
热议问题