Swift:创建具有定义数量的值的UInt8数组
如何在Swift中创建Swift:创建具有定义数量的值的UInt8数组,swift,uint8t,Swift,Uint8t,如何在Swift中创建UInt8的数组? 我已使用以下代码尝试此操作: var array: [UInt8] = [UInt8]() 现在我想循环第二个UInt变量a: for var i: Int = 0; i < a.count; i++ { array[i] = UInt8(a[i]^b[i]) } 变量i的:Int=0;i[0x01,0x01,0x01,0x01,0x01]相同的位时,循环工作正常 有人知道为什么吗?您可以使用数组的init(count:Int,repe
UInt8
的数组
?
我已使用以下代码尝试此操作:
var array: [UInt8] = [UInt8]()
现在我想循环第二个UInt
变量a
:
for var i: Int = 0; i < a.count; i++ {
array[i] = UInt8(a[i]^b[i])
}
变量i的:Int=0;i
但是我得到了以下错误:
致命错误:数组索引超出范围
当我在变量数组中放入与a
->[0x01,0x01,0x01,0x01,0x01]
相同的位时,循环工作正常
有人知道为什么吗?您可以使用数组的init(count:Int,repeatedValue:Element)
如下:
var array = [UInt8](count: 5, repeatedValue: 0x01)
要了解有关数组初始值设定项的更多信息,请查看此处:您可以使用数组的init(count:Int,repeatedValue:Element)
,如下所示:
var array = [UInt8](count: 5, repeatedValue: 0x01)
要了解有关数组初始值设定项的更多信息,请查看此处:您可以使用
第二个数组的计数,以避免索引超出范围错误
var array = [UInt8](count: a.count, repeatedValue: 0x00)
也可以在循环中使用数组的append方法
for var i:Int = 0; i < a.count; i++
{
array.append( UInt8(a[i]^b[i]) )
}
变量i的:Int=0;i
您可以使用
第二个数组的计数,以避免索引超出范围错误
var array = [UInt8](count: a.count, repeatedValue: 0x00)
也可以在循环中使用数组的append方法
for var i:Int = 0; i < a.count; i++
{
array.append( UInt8(a[i]^b[i]) )
}
变量i的:Int=0;i
来自
在Swift文件中:
不能使用下标语法将新项追加到
数组
有不同的可能解决方案:
创建具有所需大小的数组,如@fantatitude所述:
var array = [UInt8](count: a.count, repeatedValue: 0)
for var i = 0; i < a.count; i++ {
array[i] = UInt8(a[i]^b[i])
}
zip(a,b)
返回所有数组元素对的序列
(如果两者中较短的数组已用尽,则停止)<代码>映射()
然后计算每对的XOR,并将结果返回为
数组。来自
在Swift文件中:
不能使用下标语法将新项追加到
数组
有不同的可能解决方案:
创建具有所需大小的数组,如@fantatitude所述:
var array = [UInt8](count: a.count, repeatedValue: 0)
for var i = 0; i < a.count; i++ {
array[i] = UInt8(a[i]^b[i])
}
zip(a,b)
返回所有数组元素对的序列
(如果两者中较短的数组已用尽,则停止)<代码>映射()
然后计算每对的XOR并返回结果,如下所示:
一个数组。这里的map+zip使用得非常好。一句台词太美了;)我如何使用这样一个2D数组(Java代码)byte[][]tmp=newbyte[2*(4+1)][4]实现这一点@用户3143691:我建议您开始一个新问题,其中包括所有相关信息,例如,您如何在Swift中定义二维数组a、b。我已经读过了;)var tmp=[[UInt8]](count:size,repeatedValue:[UInt8](count:5,repeatedValue:0x01))这里对map+zip的使用非常好。一句台词太美了;)我如何使用这样一个2D数组(Java代码)byte[][]tmp=newbyte[2*(4+1)][4]实现这一点@用户3143691:我建议您开始一个新问题,其中包括所有相关信息,例如,您如何在Swift中定义二维数组a、b。我已经读过了;)var tmp=[[UInt8]](count:size,repeatedValue:[UInt8](count:5,repeatedValue:0x01))Swift 3:var数组=[UInt8](repeating:0x01,count:5)@HalR:should[UInt8]not[UInt8]Swift 3:var数组=[UInt8](repeating:0x01,count:5)@HalR:should[UInt8]not[UInt8]变量b是什么?变量b是什么?