Swift3.0-02

1.数字字面量

整形字面量可以被写成如下的形式:

  • 十进制(decimal)数字,不需要加前缀
  • 二进制(binary)数字,需要加 0b 作为前缀
  • 八进制(octal)数字,需要加 0o 作为前缀
  • 十六进制(hexadecimal)数字,需要加 0x 作为前缀

示例:

let decimalInteger = 17
let binaryInteger = 0b10001       // 17 in binary notation
let octalInteger = 0o21           // 17 in octal notation
let hexadecimalInteger = 0x11     // 17 in hexadecimal notation

2.指数表达式

十进制数字表示方式:

//e搭配后面的数子,表示10的多少次方
1.25e2  代表 1.25 x 10^2 或者 125.0
1.25e-2 代表 1.25 x 10^-2 或者 0.0125

十六进制数字表示方式:

//0x 表示 16进制,F 为16进制的数字15,p搭配后面的数字,表示2的多少次方
0xFp2 代表 15 x 2^2 或者 60.0
0xFp-2 代表 15 x 2^-2 或者 3.75

看一下几个例子:

let decimalDouble = 12.1875
let exponentDouble = 1.21875e1
let hexadecimalDouble = 0xC.3p0
//他们的值都是 12.1875

为了增加大数字的可读性,swift新添了一样数字表示格式

let paddedDouble = 000123.456
let oneMillion = 1_000_000
let justOverOneMillion = 1_000_000.000_000_1

3.bool类型做条件判断

在 if 条件语句中我们都知道,凡是能够表达 真(非0) 或者 假(0) 的表达式都可以作为条件进行判断处理,但是在 Swift 中做了一些改进,因为 Swift 是类型安全的,在使用条件语句时,会阻止 非 Boolean 值的表达式作为逻辑语句,看一下下面的例子:

//错误的条件语句
let i = 1
if i {
    // this example will not compile, and will report an error
}
//正确的条件语句
let j = 1
if j == 1 {
    // this example will compile successfully
}

4.元组

元组:包含多个值到一个复合值里,即值的集合(有点像数组,但跟数组还是有很大区别)。
例如:(404, "Not Found")就是一个元组,是我们常用来描述HTTP状态吗的信息,404 Not Found常被用来表示网页不存在。

let http404Error = (404, "Not Found")
// http404Error 类型是 (Int, String), 等价于 (404, "Not Found")

(404, "Not Found")作为一个元组,集合了 IntString 两个分离的值作为HTTP的状态码,元组类型则是:(Int, String),当然我们可以创建一组任意类型的值,例如:(Int, Int, Int) or (String, Bool)

我们也可以把元组的内容分解为 常量(constants)或者 变量(variables),如下:

let http404error = (404,"Not Found")
let (statusCode,statusMessage) = http404error
print("status code is \(statusCode)")
print("status message is \(statusMessage)")

如果我们只需要一部分元组的值,而想要忽略掉另外一部分值,可以使用下划线_进行忽略,分解如下:

let http404error = (404,"Not Found")
let (statusCode,_) = http404error
print("status code is \(statusCode)")

对于一个已经初始化的元组,我们可以使用下表访问的方式,进行访问元组内部的值,如下:

let http404error = (404,"Not Found")
print("status code is \(http404error.0)")
print("status message is \(http404error.1)")

在初始化元组时也可以给每个元组的值命名,这样使元组更易读,如下:

let http404error = (statusCode:404,description:"Not Found")
print("status code is \(http404error.statusCode)")
print("status message is \(http404error.description)")

元组作为函数的返回值是比较有用的,返回的一个值能够具体的描述处理结果的信息,有利于我们对逻辑的处理,后续会谈到。

你可能感兴趣的:(Swift3.0-02)