我希望能够快速修改我的 plist 中的值,但我无法弄清楚。到目前为止,我可以读取数组中的值,但仅此而已。
var playersDictionaryPath = NSBundle.mainBundle().pathForResource("PlayersInfo", ofType: "plist")
var playersDictionary = NSMutableDictionary(contentsOfFile: playersDictionaryPath!)
var playersNamesArray = playersDictionary?.objectForKey("playersNames")? as NSArray
[println(playersNamesArray)][1]
Run Code Online (Sandbox Code Playgroud) 我试图从继承自类的对象中打印所有值,这是我的示例:
我创建类:
class Pokemon {
var name: String?
var type: String?
var level: Int?
var exp = 0.0
}
Run Code Online (Sandbox Code Playgroud)
创建对象并分配一些值:
var pikachu = Pokemon()
pikachu.name = "Pika Pika"
pikachu.level = 1
pikachu.type = "electricity"
pikachu.exp = 0
Run Code Online (Sandbox Code Playgroud)
现在,我想遍历所有皮卡丘对象属性并打印值。我在为每个循环考虑,但我不确定如何实现它。
我知道我可以做这样的事情:
func printStats(pokemon: Pokemon) {
if pokemon.name != nil {
print(" name: \(pokemon.name!)\n level:\(pokemon.level!)\n type:\(pokemon.type!)\n exp: \(pokemon.exp!)")
}
}
printStats(pokemon: pikachu)
Run Code Online (Sandbox Code Playgroud)
输出:
name: Pika Pika
level:1
type:electricity
exp: 0.0
Run Code Online (Sandbox Code Playgroud)
但是我只想遍历所有值,而不是显式地编写函数中的每个属性。