必须有一个可以简化以下代码的For循环:
let defaults = NSUserDefaults.standardUserDefaults()
self.item01.text = defaults.objectForKey("item01") as? String
self.item02.text = defaults.objectForKey("item02") as? String
self.item03.text = defaults.objectForKey("item03") as? String
//...
self.item14.text = defaults.objectForKey("item14") as? String
self.item15.text = defaults.objectForKey("item15") as? String
答案 0 :(得分:0)
要将数字连接到字符串,您必须先将其转换:
"item"+String(num)
您还可以使用插值来创建字符串中包含其他值的字符串:
"item\(num)"
但也许这里最好的方法是使用0填充格式化字符串:
String(format: "item%02d", num)
答案 1 :(得分:0)
以下是自动生成数组的方法:
var arr = [String]()
for i in 1...1000 {
arr.append(String(format: "item%02d", i))
}
arr // ["item01", "item02", "item03", ...]
答案 2 :(得分:-1)
/* Number Incrementing */
var number = 1
/* Array of Items */
let itemsArray = [item01, item02, item03...]
/* Get User Defaults */
let defaults = NSUserDefaults.standardUserDefaults()
for item in itemsArray {
if number < 10 {
item.text = defaults.objectForKey("item0\(number)") as? String
} else {
item.text = defaults.objectForKey("item\(number)") as? String
}
number++
}