Swift - 基本运算符
简介
术语运算符有一元、二元和三元运算符。
受运算符影响的值叫操作数,在表达式 赋值运算符
// 为变量name赋值为Edward
var name = "Edward"
// 为变量pi赋值为3.1415926
var pi: Double = 3.1415926
// 为变量isLogin赋值为true
var isLogin: Bool = true
var doctor = "Edward"
var teacher: String = doctor
print(teacher) // 输出 Edward
let (width,height) = (375,667)
print("width is '(width)',height is '(height)'.") // 输出 width is '375',height is '667'.
var a: Int
var b = a = 20 // 工程发出警告
let x = 1,y = 2
if x = y {
// 此句错误,因为 x = y 并不返回任何值
}
这个特性使你无法把( 算术运算符
let a = 10,b = 20
let sum = a + b
print("sum is '(sum)'.") // 输出 sum is '30'.
let a = 10,b = 20
let sub = b - a
print("sub is '(sub)'.") // 输出 sub is '10'.
let a = 10,b = 20
let multiply = a * b
print("multiply is '(result)'.") // 输出 multiply is '200'.
var remainderA = 3 % 2
print("remainderA is '(remainderA)'.") // 输出 remainderA is '1'.
var remainderB = 5.2 % 3.1
print("remainderB is '(remainderB)'.") // 输出 remainderB is '2.1'.
自增和自减运算
var number = 10
print("number++ = (number++)") // 输出 number++ = 10
print("number-- = (number--)") // 输出 number-- = 11
let number = 10
let result1 = number++
let result2 = ++number
print("result1 = (result1),number = (number). ") 输出 result1 = 10,number = 12.
print("result2 = (result2),number = (number). ") // 输出 result2 = 12,number = 12.
一元运算符
符合运算符
比较运算符
2 == 1 // false
2 != 1 // true
2 > 1 // true
2 < 1 // false
2 >= 1 // true
2 <= 1 // false
let isLogin = true
if isLogin == true {
print("已登录!")
}else {
print("未登录!")
}
// 输出已登录
三目运算符
(expression)? : if-true-statement : if-false-statement
if expression {
if-true-statement
}else {
if-false-statement
}
let isLogin = true
isLogin ? print("已登录!") : print("未登录!") // 输出 已登录!
nil合并运算符
let str: String? = "123"
print(str ?? "没有值!") // 输出 123
区间运算符
闭区间运算符
for i in 1...5 {
print("5 * (i) = (5 * i)")
}
// 输出结果如下
// 5 * 1 = 5
// 5 * 2 = 10
// 5 * 3 = 15
// 5 * 4 = 20
// 5 * 5 = 25
半开区间运算符
// 创建一个数组
let numbers = [1,2,3,4,5]
// for-in遍历数组
for var index in 0..<numbers.count {
print(numbers[index])
index++
}
// 依次打印:1、2、3、4、5
逻辑运算符
逻辑非
let isLogin = true
print(!isLogin) // 输出false
逻辑与
let account = true
let password = true
if account && password {
print("登陆成功!")
}else {
print("登陆失败!")
}
// 输出 登陆成功!
逻辑或
let fingerprint = true
let headPortrait = false
if fingerprint || headPortrait {
print("验证成功!")
}else {
print("验证失败!")
}
// 输出 验证成功!
逻辑运算符的组合计算与优先级
let enteredDoorCode = true
let passedRetinaScan = false
let hasDoorKey = false
let knowsOverridePassword = true
if enteredDoorCode && passedRetinaScan || hasDoorKey || knowsOverridePassword { print("Welcome!")
} else {
print("ACCESS DENIED")
}
// 输出 "Welcome!"
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- c# – 运行到System.MissingMethodException:使用PrivateO
- 正则表达式
- Binary XML file line #2: Error inflating class android.
- ruby-on-rails – 如何使用Capybara测试S3直接上传?
- c# – 双精度数据类型,小数位后计数小数
- vb.net – WinForms应用程序之间的SendMessage – 表单需要
- cosf(M_PI_2)不返回零
- PostgreSQL学习笔记(一)
- 正则表达式 – emacs:突出显示平衡表达式(例如,LaTeX标签)
- c – boost :: weighted_median和eigen :: vectorXf –newb