Swift 4.2:以下声明是什么意思

时间:2018-09-20 08:55:51

标签: swift

我是Swift和IOS的新手,所以有很多未知数。以下声明声明是什么意思?

private let _digest: (UInt64, UInt64)

4 个答案:

答案 0 :(得分:2)

这是一个元组。就像数组如何为元素建立索引一样,也可以使用.运算符和索引来访问此变量。

_digest.0
_digest.1

但是,如果要使用名称而不是索引来访问它们,那也是可能的。 (您仍然可以使用索引访问它)

private let _digest: (first: UInt64, second: UInt64)

_digest.first
_digest.second

有关Tuples的更多信息。

答案 1 :(得分:0)

它是一个tuple,其中包含两个UInt64

元组是一组不同的值,表示为一个。根据苹果的说法,元组类型是用逗号分隔的零个或多个类型列表,并用括号括起来。这是结构的微型版本。

let person = ("John", "Smith")

var firstName = person.0 // John
var lastName = person.1 // Smith

此外,如果需要,可以按名称而不是索引访问那里的元素。

var person = (fName:"John", lName:"Smith", age:Int())
person.age = 33
print(person.fName) // John
print(person.lName) // Smith
print(person.age) // 33

此外,元组的类型由其具有的值确定。因此("tuple", 1, true)将是type (String, Int, Bool)

有关更多信息,请访问here

答案 2 :(得分:0)

这是类型tuple的私有常量,其中包含两个UInt64值。

您可以在Swift here中阅读有关元组和其他类型的信息

一个例子:

let someTuple: (Double, Double) = (3.14159, 2.71828)

用法:

print(someTuple.0) // 3.14159

答案 3 :(得分:0)

您基本上要做的是声明一个常量变量-由于关键字let-被称为_digest,您正在为其分配 type (UInt64, UInt64) ,这是一个具有两个UInt64类型的变量的 tuple