Swift-逻辑运算符
2016-06-06 22:17
316 查看
//
// main.swift
// Swift-逻辑运算符
//
// Created by dingkang on 16/6/7.
// Copyright © 2016年 dingkang. All rights reserved.
//
import Foundation
逻辑运算是用来判断一件事情是“成立”还是“不成立”,或者是“真”还是“假”的,判断的结果只有两个值,用数字表示就是“1”和“0”。其中“1”表示该逻辑运算的结果是“成立”的,“0”表示这个逻辑运算的结果是“不成立”的。这两个值成为“;逻辑值”。
逻辑运算符主要用于逻辑运算,包含 “!”(逻辑非)、“&&”(逻辑与)、“||”(逻辑或)、等3种,逻辑运算符的真值表如下:
其中,“!”是单目运算符,而“&&”和“||”是双目运算符。
逻辑非(!),其结果是运算分量逻辑值的“反”。
逻辑与(&&),仅当两个运算分量同事为真时,结果才为真;否则,只要其中有一个为假,结果就为假。
逻辑或(||),只要其中有一个运算分量为真,结果就为真;仅当两者同时为假时,结果才为假。
*/
输出结果:
输出结果:
//事实上,如果第一个值为false,那么就不需要取计算第二个值了,因为第二个值已经不能影响表达式的结果了。这种设计被称作为“短路计算”
输出结果:
输出结果:
// main.swift
// Swift-逻辑运算符
//
// Created by dingkang on 16/6/7.
// Copyright © 2016年 dingkang. All rights reserved.
//
import Foundation
逻辑运算符
/**逻辑运算是用来判断一件事情是“成立”还是“不成立”,或者是“真”还是“假”的,判断的结果只有两个值,用数字表示就是“1”和“0”。其中“1”表示该逻辑运算的结果是“成立”的,“0”表示这个逻辑运算的结果是“不成立”的。这两个值成为“;逻辑值”。
逻辑运算符主要用于逻辑运算,包含 “!”(逻辑非)、“&&”(逻辑与)、“||”(逻辑或)、等3种,逻辑运算符的真值表如下:
其中,“!”是单目运算符,而“&&”和“||”是双目运算符。
逻辑非(!),其结果是运算分量逻辑值的“反”。
逻辑与(&&),仅当两个运算分量同事为真时,结果才为真;否则,只要其中有一个为假,结果就为假。
逻辑或(||),只要其中有一个运算分量为真,结果就为真;仅当两者同时为假时,结果才为假。
*/
1.逻辑非
//逻辑非运算 !a 是对一个布尔值取反,使得true变为false, 或者使false变成true。它是一个前置运算符,需要出现在操作数之前,而且不需要加空格,读作非alet allowedPrint = false if !allowedPrint{ //只有在"非allowedPrint"为true,即allowedprint为false是才会执行 print("Access") //执行时输出接受 }else{ print("Access Denied") //否则输出拒绝访问 }
输出结果:
2.逻辑与
//逻辑与 a&&b 表达了只有a和b的值都为true时,整个表达式的值才会是true。只要任意一个为false,整个表达式的值就为false。let account = true //账号正确 let password = false //密码错误 if account && password{ //逻辑与 当账号密码为真时,输出登录成功 print("Logo success") }else{ //否则输出账号或密码错误 print("Account or Password error") }
输出结果:
//事实上,如果第一个值为false,那么就不需要取计算第二个值了,因为第二个值已经不能影响表达式的结果了。这种设计被称作为“短路计算”
3.逻辑或
//逻辑或 a||b 它表示了两个逻辑表达式的其中一个为true,那么整个表达式就为true。同逻辑与相似,逻辑或也是“短路计算”的,当左端的表达式为true时,就不计算右边的表达式了,直接反馈给true,因为他不可能改变整个表达式的值了。let hasDoorKey = false //没有钥匙 let knowsPassWord = true //知道密码 if hasDoorKey || knowsPassWord{ //逻辑与 拥有钥匙或知道密码 就能进门 print("Welcome") //输出欢迎 }else{ print("Access Denied") //否则输出拒绝访问 }
输出结果:
4.组合逻辑
//在逻辑运算中允许组合多个逻辑运算来表达一个符合逻辑let cardAccount = true //卡号是对的 let cardPassword = false //忘记了密码 密码是错误的 let hasIDCard = true //拥有身份证 可以补办卡 if cardAccount && cardPassword || hasIDCard{ print("可以取到钱") //卡是对的并且密码是对的,或者带了身份证补办卡就能发取到钱 }else{ print("不可以") //否则不可以 }
输出结果:
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- Apple Swift学习教程
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 软件 bug 的生命周期
- 介绍 Fedora 上的 Swift
- Lua中关系运算符的使用教程
- Lua学习笔记之运算符和表达式
- 探索PowerShell(九) 条件控制、逻辑
- C#运算符重载用法实例分析
- sql server 2008中的apply运算符使用方法
- C#中38个常用运算符的优先级的划分和理解
- 讲解C++编程中Address-of运算符&的作用及用法
- 详解C++中的成员访问运算符和指针到成员运算符
- C++中的按位与&、按位与或|、按位异或^运算符详解