Swift 基本运算符(笔记)
来源:互联网 发布:linux 没有nslookup 编辑:程序博客网 时间:2024/04/30 14:32
/********************基本运算符*********************/
// 运算符就是检测,改变,合并值的特殊符号或短语
// = 不再有返回值,防止把==写成=又不报错
// + - * / %不会被允许溢出,如果要处理溢出,有特殊的溢出运算符
// 浮点数可以取余
// 区间运算符 a..<b和 a...b
/********************术语**********************/
// 运算符分为一元,二元,三元运算符
// 一元运算符对单一操作对象操作
// 前置运算符!a,后置运算符a++
// 二元运算符操作俩对象是中置的 2+3
// 三元,三目运算符 a?b:c
// 操作数
// 手运算符影响的 如 a+b +是运算符, a,b是操作数
// 赋值运算符 a = b
let b = 10
var a = b
print(a)
// 如果赋值的右边是一个多元组,它的元素可以马上被分解成多个常量或者变量
let (x,y) = (2,3)
print(x)
print(y)
// x = y 不会自动判定真假了
//if x = y {
// // 此句错误,因为 x = y不返回任意值
//}
/********************算术运算符****************/
let a1 = 6
let b1 = 2
var c1 = a1 +b1
print(c1)
c1 = a1 - b1
print(c1)
c1 = a1 * b1
print(c1)
c1 = a1 / b1
print(c1)
// 数组运算中不能溢出,如果溢出,用溢出运算符 a &+ b
// 加法运算也能用在 String
let d1 = "hello," +"world"
print(d1)
// 打印结果 hello,world
// 求余运算符 (取模运算符,对于负数的操作)
let e1 = 4
c1 = a1 % e1
print(c1)
// 在对负数取余的时候,负号会被忽略
let f1 = -4
c1 = a1 % f1
print(c1)
// 也就是说. 6%4 == 6%-4
// swift 可以对浮点数进行取余
// 类型必须一样,如果有 int类型的必须转成浮点数,例如例子中的a1
let g1 = 2.2
let h1 = Double(a1) %g1
print(h1)
// 自增或自减运算
var a2 = 6
var b2 = 0
b2 = a2++
print("a2 ==\(a2) ,b2 ==\(b2)")// 结果a2 = 7,b2 = 6
b2 = ++a2
print("a2 ==\(a2) ,b2 ==\(b2)")// a2 = 8.b2 = 8
b2 = a2--
print("a2 ==\(a2) ,b2 ==\(b2)")// a2 = 7,b2 = 6
b2 = --a2
print("a2 ==\(a2) ,b2 ==\(b2)")// a2 = 6,b2 = 6
// ++在前先++再返回,++在后先返回后++
// 组合运算符
var a3 = 5
a3 += 3
print(a3)
a3 -= 2
print(a3)
a3 *= 2
print(a3)
a3 /= 5
print(a3)
// 比较运算符
// 返回的都是标识表达式是否成立的布尔值
// 多用于判断语句
// a == b
// a != b
// a > b
// a < b
// a >= b
// a <= b
// swift新提供的===和!== 这两个比较符来判定两个对象是否同时引用同一个实例对象
// 在类与结构中详解
let name = "world"
if name =="world" {
print("hello , world")
} else {
print("I'm sorry\(name),but I don't recognize you")
}
// 三母运算符
// 没啥说的..把文档的例子抄一遍吧
// eg1
let contentHeight1 = 40
let hasHeader1 = true
let rowHeight1 = contentHeight1 + (hasHeader1 ?50 : 20)
print(rowHeight1)
// 相当于
// eg2
let contentHeight2 = 40
let hasHeader2 = true
var rowHeight2 = contentHeight2
if hasHeader2 {
rowHeight2 = contentHeight2 + 50
} else {
rowHeight2 = contentHeight2 + 20
}
print(rowHeight2)
/***************************空合运算符******************************/
// (a??b)
// a包含一个值进行解封,如果 a有值就解封成功,如果没有,就给他一个默认的 b
// a 必须是 optional类型
// 默认 b的类型必须要和 a 存储值的类型保持一致
// 表示为 a != nil ? a! : b
/*************************区间运算符*********************/
// 闭区间运算符(a...b)定义一个包含从 a 到 b (包含 a和 b)的所有值的区间,b必须大于等于 a
for index in1...5 {
print("\(index) * 5 =\(index * 5)")
}
// 半开区间运算符
// 半开区间(a..<b)定义一个从 a到 b 但不包括 b的区间,这个区间包含第一个值不包含最后一个
// 读取从0开始的列表(如数组)时,非常方便
let names = ["A","B","C","D"]
let count = names.count
for i in 0..<count {
print("第\(i+1)个人叫\(names[i])")
}
/*******************逻辑运算符******************/
// 逻辑运算符,必须是一个布尔值,也就是说不是 true 就是 false
// 逻辑非
let a4 = false
if !a4 {
print("yes")
} else {
print("no")
}
//let b4 = "111"
//if !b4 {
// // 错误
//}
// 逻辑与和逻辑或 都必须是两个布尔值
// 多个逻辑运算来表达一个符合逻辑的时候,从左到右依次判定
let a5 = true
let b5 = false
let c5 = true
let d5 = false
if a5 && b5 || c5 || d5 {
}
// 必须 a5和b5都对,或者c5对,最后或者 d5对才会执行
// 使用括号可以用来确定优先级
- Swift 基本运算符(笔记)
- Swift笔记:基本运算符
- Swift学习笔记(3)--基本运算符
- Swift--基本运算符
- [Swift]基本运算符
- Swift基本运算符
- Swift - 基本运算符
- Swift-基本运算符
- swift 基本运算符
- Swift 基本运算符
- Swift学习笔记之基本数据类型-基本运算符
- 基本运算符—Swift学习笔记(五)
- 【Swift】学习笔记(二)——基本运算符
- Swift学习笔记(二)之基本运算符
- Swift学习笔记之基本运算符(一)
- Swift学习笔记基础语法-基本运算符
- swift学习笔记(2)-基本运算符
- Swift学习笔记(4)——基本运算符
- 从网络解析数据时遇到的问题
- connect-examples
- 对于java中作用域
- 自定义导航栏,系统导航栏一堆bug
- 别人家的设计不一定适合你!移动端设计模式的误用
- Swift 基本运算符(笔记)
- Redis入门之redis 连接以及 对字符的操作
- android-async-http AsyncHttpClient介绍
- 如何启动另外一个应用的任意Activity
- 美联储加息落地 题材股继续活跃创业板大涨1.85%
- Wing IDE for Linux 的安装和破解
- 测试1217
- SingleThreadExecutor的使用
- TinyReplaySystem回放系统设计和开发