初识swift

2018-04-17  本文已影响2人  王小妞闯天涯

1.基本数据类型

swift中两种数据类型,var 可变,let不可变,然后根据值来进行自动推导

如下所示:

  let x = 10 //不可变类型,一经创建则不可更改

// 如果再执行下面这句则会报错

  x = 20

var y = 10.5//可变类型,执行下面语句不会报错

      y = 30

print(x+y) //这句会报错,因为数据类型不同

在swift中是没有自动转换的,如果我们在OC中执行

  int a = 10;

  float b = 10.5;

  NSLog(@“%f”,a+b);//代码没有问题不会报错,但是在swift中不同数据类型之间是不能进行计算的

  //如果我们想要使它们可以进行计算,我们需要进行类型转换

  //上面的x+y 我们可以这样做:

  print(x + Int(y))

  print(Double(x) + y)

注:Int() 在api中是public struct Int

      即结构体类型,事实上大部分的基本数据类型在swift3之后都被定义成为结构体类型

let z:Double = 20.3

我们还可以这样初始化变量,即为它直接指定数据类型,但是我们通常不用指定类型,都是自动推导

var 类型有默认值,默认值为nil,let类型没有默认值

2.可选数据类型

let x : Optional = 10

let y:Int? = nil //?表示可选整数类型

print(x+y) //如果直接这样执行,会报错可选类型在参与计算之前一定要先解包

print(x!+y!) //可以这样解包进行运算,但是要注意值不能为空

关于可选性数据类型我们要注意:

1.!表示强行解包,从可选值中获取一个非空值强行解包

2.!要解包的变量一定不能为空,否则会崩溃

3.程序中要慎用!

4.在我们真正使用的时候再进行解包,计算之前一定要先解包才能参与计算

swift与OC最大不一样之处就是加了可选性数据类型,关于可选性数据类型其他要注意的,后续还会更新

上一篇 下一篇

猜你喜欢

热点阅读