我有一个教程,我正在研究Swift&关于下标选项。以下是关于此主题的简单文档代码示例。
struct Matrix {
let rows: Int, columns: Int
var print: [Double]
init(rows: Int, columns: Int) {
self.rows = rows
self.columns = columns
print = Array(count: rows * columns, repeatedValue: 0.0)
}
subscript(row: Int, column: Int) -> Double {
get {
return print[(row * columns) + column]
}
set {
print[(row * columns) + column] = newValue
}
}
}
var mat = Matrix(rows: 3, columns: 3)
mat[0,0] = 1.0
mat[0,1] = 2.0
mat[1,0] = 3.0
mat[1,1] = 5.0
println("\(mat[0,0])")
println("\(mat[0,1])")
println("\(mat[1,0])")
println("\(mat[1,1])")
任何人都可以解释一下这里发生了什么。我无法从这个例子中了解下标选项。可能会有很多像我一样的人。提前谢谢。
答案 0 :(得分:0)
下标使您能够通过编写一个或多个来查询类型的实例 实例名称后方括号中的更多值。他们的语法 类似于实例方法语法和计算属性 句法。您使用subscript关键字编写下标定义, 并指定一个或多个输入参数和一个返回类型 与实例方法相同。与实例方法不同,下标可以 是读写或只读。此行为由getter传达 和setter的方式与计算属性相同
我认为Apple description退出了。
如果你喜欢Ray Wenderlich,请参阅here。