运算符的精度问题

来源:2-2 Swift-常量和变量

mobisoft

2014-11-26 21:03

1. let x:Int = 1.2 //我这里报错 为什么老师哪里会自动转换成 1

2. let a:Int = 3 //3
let b:Double = 0.1415926 // 0.142
let pi:Double = Double(a)+b // 3.142
为什么老师的结果是3.1425926 我的是3.142 求解???

3.我定义中文变量报错

let 姓名 =“您好” //报错

我的开发环境是xcode6.0

写回答 关注

3回答

  • AndyHT
    2014-11-30 22:56:12

    刚才那个手残,“=”要用英文字符的"="

  • AndyHT
    2014-11-30 22:55:27

    1、中文变量名报错大都是因为“=”用错,用中文字符的“=”会在console里显示

    error: type annotation missing in pattern

    var 人=1

    这个“=”应该用中文字符的

    2、Xcode6.2依然不会自动转换变量,看这趋势Apple要改掉这个了

  • l1uyub0b0b0
    2014-11-28 01:06:05

    这个课程由于最初是在xcode 6.0 beta的环境下录制的,后来在xcode6.1正式版推出的时候进行了更新,对于其中的语法变更进行了修订,所以可能还是存在一些不兼容的情况,抱歉!


    首先,建议升级至xcode6.1。对于xcode6.1,其中的问题回答如下:

    1)是的,在新版本中,let x:Int = 1.2会报错,而不会自动转换成整形;

    2)在xcode6.1中,playground右侧显示的精度依然是3.1415926

    3)在xcode6.1中,定义中文变量名没有问题。



玩儿转Swift

这套教程比任何的Swift中文教程深入,并且演示示例更丰富

57181 学习 · 511 问题

查看课程

相似问题