我制作了一个新的Playground并编写了如下代码。
var value = 33 //This will make an integer type of value variable with value 33
value = 22.44 //This doesn't execute as its assigning Double/Float value to an integer.
我试过
1.
value = Double(value)
value = 44.55 //Error here
2.
value = Double(33.44) //Error here too.
3.
value : Double = 33.22 //Error here too.
现在我应该怎么做才能将浮点值赋值。
注意:我在Swift学习水平。
感谢。
答案 0 :(得分:13)
声明var value = 33
会将值的类型推断为Int
。如果您要分配33并将value
设为Float或Double,则必须在指定var value : Double = 33
时声明类型var value = Double(33)
或将33转换为Double。
答案 1 :(得分:1)
您必须在变量声明中设置数据类型。
var value: Double = 33
但你也可以这样做:
var value: Double
value = 33
将其定义为var将使变量可变,因此在定义后可以更改值
value = 33.2
value = 46.1
如果您只是定义一个不需要更改的常量或变量,那么最好像这样定义它:
let value: Double = 33.2
如果您因某种原因需要将其作为Int,您可以将其传递给函数或定义如下:
let intValue = Int(value)
答案 2 :(得分:0)
第一行
var value = 33
您创建了一个类型为Int
的变量(因为33
是一个整数文字)。之后,您不能仅为Int
分配任何其他类型。您应该创建另一个变量来存储转换的结果。