gpt4 book ai didi

compiler-errors - 如何在 Swift 中对 int 和 float 进行算术运算?

转载 作者:IT王子 更新时间:2023-10-29 05:22:36 26 4
gpt4 key购买 nike

这是我在 Swift 编程中的第一天,直到现在我们都在使用 Objective C。我尝试编写简单的加法程序,它可以工作。喜欢,

var i = 10
var j = 10
var k = i + j
println(k)

但是当我将其中一个值更改为 float 值时,它会出错。

var i = 10
var j = 10.4
var k = i + j
println(k)

Error: main.swift:13:11: Could not find an overload for '+' that accepts the supplied arguments

现在我做了谷歌搜索并尝试了一些东西,例如Double(i+j) ,但它不起作用。在这种情况下,Swift 应该隐式地将 int 转换为 float,不是吗?

如果我在理解 Swift 语言时犯了任何错误,请提出建议。

最佳答案

根据您希望的结果,您应该使用该类型的 init 方法将其转换为适当的类型。

例如。

var myInt = 5;
var myDouble = 3.4;

如果我想在我的结果中使用 double

var doubleResult = Double(myInt) + myDouble;

如果我想要一个整数,请注意 double 将被截断。

var intResult = myInt + Int(myDouble)

我在您的示例中看到的问题是您尝试执行加法运算然后转换它,但在执行加法之前两个值必须相同。

为了避免类型不匹配和转换错误,Apple 制定了非常严格的规定。有时这对于来自其他语言的开发人员来说可能有点“过于严格”,一开始我很生气,但我已经习惯了。

关于compiler-errors - 如何在 Swift 中对 int 和 float 进行算术运算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24300480/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com