如何在Swift数组中存储多长时间?

时间:2017-04-18 14:51:31

标签: ios arrays swift long-integer integer-overflow

我想要在数组中发送一些用户ID,但无法找出用于创建具有非常长整数的数组的正确Swift 3语法。我尝试使用@前缀并使用as AnyObject,但这不起作用。

let idArray = [10211420262370680, 10211420262370680]
  

错误:存储到int

中时整数文字溢出

创建具有如此长整数的数组的正确方法是什么?

2 个答案:

答案 0 :(得分:9)

请改为尝试:

let idArray: [UInt64] = [10_211_420_262_370_680, ...]

作为包络计算的后面,每个 10位会为您购买 3位十进制数。例如,UInt32最大约为4_000_000_000,依此类推。

顺便说一下,对于大数字文字,上面的下划线_just syntax sugar; - )

答案 1 :(得分:4)

签名长数组:

let signed64BitIntegerArray: [Int64] =      [-10211420262370680, 10211420262370680]

无符号长数组:

let unsigned64BitIntegerArray: [UInt64] =   [ 10211420262370680, 10211420262370680]