Ios 如何在UInt8数组中存储负数

Ios 如何在UInt8数组中存储负数,ios,swift3,xcode8,Ios,Swift3,Xcode8,我是iOS开发新手,当我在byte/UInt8数组中存储一个无符号数字时,它会显示一个错误 var iv: [UInt8] = [69, 56, 30, -78, -8, 9, 81, 37, -116, 56, -4, 95, -106] 负整数78以无符号类型UInt8存储时溢出 已编辑 我将其用于加密目的,如果我将其更改为签名,密码输出将更改为其他解决方案?或者如何将其转换为有符号swift您不能,UInt是无符号整数表示非负,将数组类型更改为Int您不能,UInt是无符号整数表示非负,

我是iOS开发新手,当我在
byte/UInt8
数组中存储一个无符号数字时,它会显示一个错误

var iv: [UInt8] = [69, 56, 30, -78, -8, 9, 81, 37, -116, 56, -4, 95, -106]
负整数78以无符号类型UInt8存储时溢出

已编辑


我将其用于加密目的,如果我将其更改为签名,密码输出将更改为其他解决方案?或者如何将其转换为有符号swift

您不能,UInt是无符号整数表示非负,将数组类型更改为Int

您不能,UInt是无符号整数表示非负,将数组的类型更改为Int

UInt8
无符号整数
,它的范围为
0…255
,因此不能存储超出此范围的值,这意味着非负且在
255
中,如果要存储负值,请使用
Int8
,它的范围是
-128…127

UInt8
无符号整数
,它的范围是
0…255
,因此不能存储超出此范围的值意味着非负值,并且在
255
中,如果要存储负值,请使用
Int8
,其范围为
-128…127

uint8是无符号(uint8中的“u”)整数。它的范围从0到255。因此,它不能存储范围外的数字(负数不在范围内)

int8是一个有符号整数。它来自−128到127。 还是int16(−32768到32767)是您需要存储128到255的值

下面是一个包含整数范围的良好表格:

uint8是一个无符号(uint8中的“u”)整数。它的范围从0到255。因此,它不能存储范围外的数字(负数不在范围内)

int8是一个有符号整数。它来自−128到127。 还是int16(−32768到32767)是您需要存储128到255的值

下面是一个包含整数范围的良好表格:


为什么不直接使用带符号的int8?
UInt
通常代表“无符号整数”。i、 没有负数。你不能,无符号整数总是,嗯,无符号的。他们不可能是消极的。将类型更改为
Int8
。比较。谢谢@MartinR这可以通过将无符号int转换为有符号int来工作为什么不使用有符号Int8?
UInt
通常代表“无符号整数”。i、 没有负数。你不能,无符号整数总是,嗯,无符号的。他们不可能是消极的。将类型更改为
Int8
。比较。谢谢@MartinR这是通过将无符号int转换为有符号hank@Marat来实现的,但我如何将其转换为无符号数组?谢谢@Marat,但我如何将其转换为无符号数组?