Swift3 如何将其转换为swift 3

Swift3 如何将其转换为swift 3,swift3,Swift3,如何将block的此项转换为swift 3 let row = textField.tag if row >= arrayOfLinks.count { for var addRow = arrayOfLinks.count; addRow <= row; addRow += 1 { arrayOfLinks.append("") } } let row=textField.tag 如果行>=arrayOfLinks.count{ 对于var addRow

如何将block的此项转换为swift 3

let row = textField.tag
if row >= arrayOfLinks.count {
   for var addRow = arrayOfLinks.count; addRow <= row; addRow += 1 {
       arrayOfLinks.append("")
   }
}
let row=textField.tag
如果行>=arrayOfLinks.count{
对于var addRow=arrayOfLinks.count;addRow请尝试以下方法:

let row = textField.tag
if row >= arrayOfLinks.count {
   var addRow = arrayOfLinks.count
   while addRow <= row {
       arrayOfLinks.append("")
       addRow += 1
   }
}
let row=textField.tag
如果行>=arrayOfLinks.count{
var addRow=arrayOfLinks.count

而addRow则根本不需要C风格的for循环

let row = textField.tag
while arrayOfLinks.count <= row {
    arrayOfLinks.append("")
}
let row=textField.tag

虽然arrayOfLinks.count由于重复附加相同的(value)元素,因此不需要在此处使用循环,只需将集合附加到现有的
arrayOfLinks
数组:

if arrayOfLinks.count <= row {
    arrayOfLinks.append(contentsOf:
        [String](repeating: "", count: row - arrayOfLinks.count + 1))
}

如果arrayOfLinks.count,请注意,当
arrayOfLinks.count
等于
时,OPs原始解决方案(有意或无意…)也会附加一个最终元素,即使用