Swift 常量、变量、条件判断
- 常量用 let ,变量用 var
- // Optional为可选项,// 可用类型值 + ? 代替
let x: Optional = 10
let y: Int? = 5
print(x! + y!)
- 三木运算符
// 三目运算符
x > 5 ? print("大了") : print("小了")
// 可以这样写 `()`,如果不判断的话
x > 5 ? print("大了") : ()
/**
?? 是一个简单的 三目运算
- 如果有值,使用值
- 如果没有值,使用 ?? 后面的值替代
?? 优先级最低
*/
print((x ?? 0) + (y ?? 0))
- if let / var 连用语法,目的就是判断值
let oName:String? = "王"
let oAge:Int? = if oName != nil && oAge != nil {
print(oName! + String(oAge!) + "岁")
} // if let 连用,判断对象的值是否为 nil, {} 内一定有值,可以直接使用,不需要解包
// if var 连用, {} 可以对值进行修改!
if var name = oName,
let age = oAge {
name = "李" // 进入分支之后, name 和 age 一定有值,不需要解包
// name 和 age 的作用域仅在 {} 中
print(name + String(age) + "岁")
} else {
print("name 或 age 为 nil")
}
- guard 守卫 / 守护 // guard let 和 if let 刚好相反
这样可以使可选项去掉
let oName: String? = "王"
let oAge: Int? = // guard let 守护一定有值,如果没有直接返回
guard let name = oName,
let age = oAge else {
print("年龄或者姓名为 nil")
return
} // 代码执行至此,name 和 age 一定有值
// 通常判断是否有值之后,会做具体的逻辑实现,通常代码多
// 如果用 if let 凭空多了一层分支,guard 是降低分支层次的方法
// guard 的语法是 Swift 2.0 推出的!
print(name + String(age) + "岁")
- swtich case
1. swtich 可以针对任意类型的值进行分支,不再局限在整数
2. switch 一般不需要break
3. switch 如果要多值,使用 `,`
4. 所有的分支至少需要一条指令,如果什么都不干,才使用break
func test9(num: String) {
switch num {
case "10", "9":
print("优")
case "8":
break
default:
print("一般")
}
}
- for循环
// [0, 5)
for i in 0..<5 {
print(i)
} print("------") // [0, 5]
for i in 0...5 {
print(i)
}
Swift 常量、变量、条件判断的更多相关文章
- Swift入门学习之一常量,变量和声明
版权声明:本文为博主原创文章,未经博主允许不得转载. 转载请表明出处:http://www.cnblogs.com/cavalier-/p/6059421.html Swift入门学习之一常量,变量和 ...
- Swift学习(四)常量&变量&基础数据类型
常量和变量 常量: 使用let关键词来声明一个常量 所指向的是一个特定类型的值,如数字10或者字符”hello”,常量的值是不能够被二次修改的 编程时使用常量能够让代码看起来更加安全和简洁! let ...
- (转载)PHP 判断常量,变量和函数是否存在
(转载)http://www.jb51.net/article/17881.htm 如果你看懂了上面一句话,那么接下来都是废话,PHP手册写的还是很全的.一句话就把我标题中的问题全部解决了. 还是举几 ...
- Python学习笔记——基础篇【第一周】——变量与赋值、用户交互、条件判断、循环控制、数据类型、文本操作
目录 Python第一周笔记 1.学习Python目的 2.Python简史介绍 3.Python3特性 4.Hello World程序 5.变量与赋值 6.用户交互 7.条件判断与缩进 8.循环控制 ...
- 10_bash_变量_条件判断及运算_sed_循环
shell编程: 编译器.解释器编程语言:机器语言.汇编语言.高级语言 静态语言:编译型语言 强类型(变量):变量在使用前,必须事先声明,甚至还需要初始化 事先转换成可执行格式 C/C++.C#.Ja ...
- puppet(3) 变量、数据类型、表达式、条件判断语句-if、case、selector、unless
puppet(4) 变量.数据类型.表达式.条件判断语句-if.case.selector语句 puppet变量: 1.名称必须以$开头:赋值使用=,支持追加赋值+=: 2.每个变量都有两种引用格式: ...
- PHP 判断常量,变量和函数是否存在
判断变量是否被定义:defined() if (defined('CONST_NAME')) { //do something } 判断变量是否存在:isset() ,注意变量未声明或声明时赋值为NU ...
- python自学-day2(变量、if条件判断、运算符操作)
1.变量 变量只是用于保存内存位置,将变量存储在内存中的作用,方便后面调用,这意味着,在创建变量时会在内存中开辟一个空间. 变量命名规则: 由字母.数字.下划线(_)组成 不能以数字开头 不能使用 P ...
- py定义变量-循环-条件判断
定义变量 # print('hahaha')name = " let'go "title = '刘伟长得 "很帅"!'conent = ''' let' ...
- swift 2.0 语法 常量变量
import UIKit /*: 常量变量 * 常量: let * 变量: var 完整格式: * 修饰符(let/var) 常量/变量名称: 数据类型 */ let number: Int var ...
随机推荐
- Apache Mina UDP连接目标服务器地址时出现异常
俩种情形,第一种是开始连接时候就没连上服务器:第二种是服务器关闭连接,出现的异常: 第一种: java.lang.reflect.InvocationTargetException at sun.re ...
- python脚本
python源码编译 python -O -m py_compile file.py [root@localhost python]# cat dbass.py #!/usr/local/bin/py ...
- 设置HTML编码为UTF-8
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- linux mysqlERROR 1045 (28000): linux忘记数据库密码
已验证没问题 #1.停止mysql数据库(确定能停止掉,不然第二部有问题) /etc/init.d/mysqld stop #2.执行如下命令 mysqld_safe --user=mysql - ...
- Python 爬虫常用模块
1. fake_useragent #pip install fake_useragent requests 2.图展示 pip install pyecharts pip install pyech ...
- Dubbo -- Simple Monitor
一.简介 dubbo-monitor-simple是dubbo提供的简单监控中心,可以用来显示接口暴露,注册情况,也可以看接口的调用明细,调用时间等. Simple Monitor挂掉不会影响到Con ...
- 十:python 对象类型详解六:文件
一:文件 1.简介:内置open 函数会创建一个python 文件对象,可以作为计算机上的一个文件链接.在调用open 之后,可以通过调用返回文件对象的方法来读写相关外部文件.文件对象只是常见文件处理 ...
- as3.0复制影片简介(自我复制的三种形式)
//mc是被复制影片简介的实例名,(===在库中找到mc影片简介,右击“属性”,点击“为actionscript导出”,选中确定即可===这个是重点) var newSprite:Sprite=mc; ...
- [Git] 获取指定的历史版本代码
首先 ,把项目 clone 到其他文件夹下 git clone git@github.com:skyming/BMAdScrollView.git 然后查看指定历史版本 tree 的 SHA chec ...
- numpy.random.uniform()
numpy.random.uniform均匀分布 2018年06月19日 23:28:03 徐小妹 阅读数:4238 numpy.random.uniform介绍: 1. 函数原型: numpy ...