iOS开发

Swift语法学习(区间、变量、元组、分支)

2016-09-07  本文已影响55人  Lxyang

1、常量与变量

常量

/*
常量定义格式
* 声明符号 常量名称: 类型标注
* let number: Int
*/

let number: Int = 10
//number = 9//常量不能改变

定义变量

/*:
定义变量格式
* 声明符号 变量名称: 类型标注
* var number: Int
* 特点: 变量的值可以随意更改
* 注意: 一般来说你很少需要写类型标注。如果你在声明常量或者变量的时候赋了一个初始值,Swift可以推断出这个常量或者变量的类型
*/
var number1: Int = 9
number1 = 8

2、类型推断

类型安全

注意:

转换示例

let number4 = 7
let number5 = 3.0
//let result = number4 + number5//不能这样,因为类型不一至
//强制转换
let result = Double(number4) + number5

//真实的数值(字面量)本身没有明确的类型,它们的类型只在编译器需要求值的时候被推测.
//任何变量都可单独与字面量想加,不会产生类型冲突
let result1 = number5 + 7
//字面量与字面量间也可相加
let sum = 9.7 + 2

//注意
//Swift中,Double与float CGFloat都是不同类型的,不能相加,要强制转换
let point = CGPointMake(2, 9)
let x: CGFloat = point.x
let temp = 9.2//Double类型
let sumValue = temp + Double(point.y)//把CGFloat转换成Double类开

3、元组

注意:

//创建元组数据
let tuples = (9.3,2,3)
//访问,通过下标
tuples.0
tuples.1

//指定元素名称
let tuple = (a: 2.3,b: 9)
tuple.a
tuple.b

//:分解元素
let (intValue, doubleValue) = (4, 3.14)
intValue
doubleValue

4、 区间判断

判断区间(...与..<这两个字运算符 不能有空隔)

//let range = 0..<18//半闭区间
//let range = 18..<30
let range = 18...20//闭区间

5、分支(if/三目运算/switch)

5.1 分支if

let number = 10
if number == 10 {
    print(number)
}

if number >= 10 && number <= 20 {
    print("number在10和20之间")
}

5.2 三目运算符

let value = 2
//?与右括号之间用空格隔开,不然会报错.
//书写,每个字符间尽量都隔开
let result = (value > 1) ? 3 : 9

5.3 Switch

示例1- Switch常规判断
let age = 6
switch age {
case 2,6://case中可以包含多个条件
    print("儿童")
case 12:
    print("小学")
case 18:
    print("成年")
case 20:
    fallthrough//穿透
case 24:
    print("可以结婚了")
//Swift中每一个 case 分支都必须包含至少一条语句
default:
    print("other")

}
示例2- Switch判断元组
let point = (50, 50)
switch point {
case (0, 0):
    print("原点")
    
case (50, 50):
    print("中点")
    
case (100, 100):
    print("右下角")
default:
    print("other")
    
}
示例3- 判断区间
let range = 18...20//闭区间

switch range {
    //    case 0..<18:
    //        print("未成年")
    //    case 18..<30:
    //        print("成年人")
    //    default:
    //        print("老炮")
case 0...17:
    print("未成年")
case 18...30:
    print("成年人")
default:
    print("老炮")
}
示例4- 判断字符或字符串
let rank = "A"
switch rank {
    //    case "A":
    //        fallthrough
    //    case "B":
    //        print("还可以")
case "A", "B":
    print("还可以")
case "C":
    print("差")
default:
    print("回家吧")
}
上一篇 下一篇

猜你喜欢

热点阅读