我想要在数组中发送一些用户ID,但无法找出用于创建具有非常长整数的数组的正确Swift 3语法。我尝试使用@
前缀并使用as AnyObject
,但这不起作用。
let idArray = [10211420262370680, 10211420262370680]
错误:存储到int
中时整数文字溢出
创建具有如此长整数的数组的正确方法是什么?
答案 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]