快速将正值转换为负值
Posted
技术标签:
【中文标题】快速将正值转换为负值【英文标题】:Convert positive value to negative value in swift 【发布时间】:2019-01-17 20:17:19 【问题描述】:我想将正值转换为负值,例如:
let a: Int = 10
把它转成-10
,我现在的想法就是用它来多个-1
a * -1
我不确定这是否正确,有什么想法吗?
【问题讨论】:
【参考方案1】:只需使用-
运算符。
let negativeA = -a
【讨论】:
【参考方案2】:使用 Swift 5,根据您的需要,您可以使用以下两种方法之一将整数转换为其加法逆。
#1。使用negate()
方法
Int
有一个negate()
方法。 negate()
有以下声明:
mutating func negate()
用它的加法倒数替换这个值。
下面的 Playground 代码示例展示了如何使用 negate()
来改变一个整数并用它的加法逆替换它的值:
var a = 10
a.negate()
print(a) // prints: -10
var a = -10
a.negate()
print(a) // prints: 10
请注意,negate()
也适用于所有符合 SignedNumeric
协议的类型。
#2。使用一元减号运算符 (-
)
可以使用前缀-
(称为unary minus operator)切换数值的符号。下面的 Playground 代码示例展示了如何使用它:
let a = 10
let b = -a
print(b) // prints: -10
let a = -10
let b = -a
print(b) // prints: 10
【讨论】:
不幸的是,使用 Double,如果值为零,您会得到“-0”,这是奇数(但有效)。以上是关于快速将正值转换为负值的主要内容,如果未能解决你的问题,请参考以下文章