PonySwiftiOS学习笔记iOS Developer

Swift中基本运算符的一些注意事项

2016-01-02  本文已影响87人  槛内浊物

今天被一朋友问到为什么在swift中一个整数不能与浮点数相乘呢?我说怎么会呢,你发来我看看什么情况。

大概是这样的一个场景(举个简单的例子)


1

说实话,我以前真没考虑过这个问题。不过13已经装了,跪着也要装完。
这点小问题还是难不倒我的,不就是动个手指点进去看看文档的事吗。

let s = Double(i) * f

接着他又问,那为什么这样就可以

let s = 2*3.4

这不是很明显的,这里的2(这哥们确实够二)就是个double类型吗,但他为什么是double呢?

为什么?当然是看文档了

2
  1. Swift中的乘法用泛型限定了左边和右边以及返回值类型必须一致。这里学过Java的应该一下就能看的出来,若是类型不一致应该T,U,V,这么一些不一样的字母。

  2. 又因为Swift是可以自动推断类型的,所以这里的2就被自动推断为Double类型了。为什么不是把3.4推断成Int类型呢(乔老爷死了,苹果也不至于变得这么low吧)

上一篇下一篇

猜你喜欢

热点阅读