// (一) 元组
/*
格式
变量或常用关键字 元组变量 = (变量,变量,.....)
说明:
1.元组变量还是变量,只是和其他变量表现形式不一样
2.()括号里面可以放入N个变量组成
*/
var B = (1, "黄家驹") // 元组变量B由 整形和字符串组成
print(B)
var C = 100
/*
定义一个元组D,()里面存放变量C和字符串
*/
var D = (C, "我要励志成为ios大神,并且掌握后台开发技术")
var F = (C, B)
print(F)
print(D)
// 元组的访问方式
/*
A:匿名元组变量来访问
说明:
1.1 匿名元组变量和定义好的元组变量参数必须保持一致
1.2 需要元组中的个别值,可以使用(_)来忽略不需要的值
*/
var (E,H) = B
print("E = \(E) H = \(H)")
// 如果写成这样就是错误的 var (E, H, J) = B 因为J和元组B中的参数不一致
var (_, J) = B
print("J = \(J)")
/*
1: B 是元组变量,由整形和字符串组成
2:(_,J)是一个匿名元组变量,其中x下划线(_)代表省略变量
3:元组变量B 所对应的值,一一对应赋值给匿名变量。即 B="黄家驹"
注意点:
定义的匿名元组变量个数必须和定义好的元组变量值的个数相同
*/
// B:通过索引来访问 (与数组访问相似)
var tuples = (123, "iOS大神") // 元组变量tuples 由 整形和字符串组成
print(tuples.0)
print(tuples.1)
// C:通过key来访问
/*
通过key 来访问元组变量 注意点
1:对应的变量,必须为字典 key: value
2: 访问的时候,元组变量.key
*/
var tuplesA = (frist: "Hello", second : "大神")
print(tuplesA.frist)
print(tuplesA.second)
// (二)类型转换
// 1:字符串转换为整形 (integerValue)
let strA = "123"
var value = (strA as NSString).integerValue // integerValue 函数是把字符串 转换为整形
print("value=\(value)")
var strB = "1.444"
var valueB = (strB as NSString).floatValue
print(valueB)
// 2.整形转为浮点型
var M = 1
var m1 = Double(M)
var m2 = Float(M)
print(m1, m2)
// 条件语句的用法 (if)
/*
第一种方法
if 布尔值 {}
注意点
1: 布尔值等于true 就执行if 里面的方法
2:{} 不能省略 否则会报错
第二种方法
if 可选值 {}
注意点:
1: 可选值不等于nil 就执行if 里面的方法
2: {} 不能省略 否则会报错
第三种方法
if let 常量值 = 可选值 {}
注意点:
1:if let 常量值 = 可选值 是把 可选值 赋给 常量值,如果常量值不为nil 就执行if 里面的方法
2: {} 不能省略 否则会报错
*/
// 第一种方法
var a = true
if a
{
print("a = \(a)")
}
else
{
print("a")
}
// 第二种方法
var l:Int? = 1000
if ((l != nil))
{
print("l = \(l)")
}
else
{
print("l")
}
// 第三种方法
var A:Int? = 10
if let B = A
{ // 解释 A 的值赋给 B 如果B 不为nil 执行 if {} 中方法
print("B=\(B)")
}
else
{
print("B=nil")
}
var X :Int? //X 是可选值 ,不赋值 默认为nil
if let Y = X
{ //解释 X 的值赋给 Y 如果Y 为nil 不执行 if {} 中方法
print("Y =\(Y)")
}
else
{
print("Y = nil")
}