我需要一些帮助,找出如何以最简单的方式从变量中获取属性。
所以,现在我在下面有这个类来设置块的各种属性。
class Block {
var Name:String = "Block Name"
var Value:Int = 0
init (){
}
}
var grassBlock = Block()
var dirtBlock = Block()
作为一个例子,我将包括我为单独设置每个块的名称组件所做的工作:
grassBlock.Name = "Grass"
dirtBlock.Name = "Dirt"
grassBlock.Value = 10
dirtBlock.Value = 5
然后我有一些代码根据各种事情确定“currentBlock”。所以为了方便起见,我只想说:
currentBlock = grassBlock.Name
一旦我将currentBlock变量设置为grassBlock,就可以通过某种方式从中获取grassBlock.Value以便这样做:
currentBlockValue = currentBlock.Value
我希望能够只检测当前块,然后在可能的情况下访问每个属性?
答案 0 :(得分:0)
创建对象的正确方法是使用init构造函数,如下所示:
class Block {
var Name:String?
var Value:Int?
init (name:String,value:Int){
self.Name = name
self.Value = value
}
}
创建对象可以很容易地完成:
var grassBlock = Block(name: "Grass", value: 10)
var dirtBlock = Block(name: "Dirt", value: 5)
在这里,您要将对象分配给对象,然后使用它来获取名称或值属性:
let currentBlock = grassBlock
let currentBlockValue = currentBlock.Value
let currentBlockName = currentBlock.Name