运算符和表达式(一)
来源:互联网 发布:2015珠三角gdp数据 编辑:程序博客网 时间:2024/05/24 05:01
//// main.swift// 运算符和表达式(一)//// Created by Goddog on 15/6/23.// Copyright (c) 2015年 Goddog. All rights reserved.//import Foundation//MARK: - 赋值运算符//用=作为赋值运算符var str = "Swift"var pi : Double = 3.14var visited : Bool = truevar str1 : String = str//Swift不支持连续赋值var a : Int//var b = a = 10//MARK: - 算术运算符//加、减、乘、除//注意求余运算:不在要求运算符两边操作符都是整数,支持对浮点型求余var a1 = 12.1var b1 = 4.2var mod = a1 % b1println(mod)println("负数模负数:\(-12.3 % -2.4)") //返回负数println("负数模正数:\(-21.2 % 3)") //返回负数println("正数模负数:\(24.4 % -7.2)") //返回正数println("正数模0.0:\(4 % 0.0)") //返回nanprintln("负数模0.0:\(-2 % 0.0)") //返回nanprintln("0对正数模:\(0 % 2)") //返回0.0println("0对0.0模\(0 % 0.0)") //返回nan//自加和自减:1.把++放在左边,先把操作数加一,然后放到表达式中// 2.把++放在右边,先把操作数放到表达式中运算,然后把操作数加一var a2 = 5var d2 = 1var b2 = a2++ + 1var c2 = ++d2 + 1println("a2是:\(a2), b2是:\(b2),c2是:\(c2)")var a3 = 4.2println("a的5次方:\(pow(a3,5))")println("a的平方根:\(sqrt(a3))")println("0~10之间的随机数:\(arc4random() % 10)")println("1.2的sin函数值:\(sin(1.2))")//MARK: - 溢出运算符//Swift不允许整型变量或常量被赋值一个超出其表数范围的数值var f : Int16 = 32767//f = f + 1 //超了//&+、&-、&*、&/、&%f = f &+ 1 //值的上溢f = f &- 100 //值的下溢let g = 10let k = g &/ 0 //得到0let q = g &% 0 //得到0//MARK: - 位运算符//&按位与、|按位或、^按位异或、~按位取反、<<左位移运算符、>>右位移运算符//MARK: - 范围运算符//1.闭范围运算符 a...b用于定义一个从a~b(包括a、b边界)所有值的范围,a不能大于bvar ranges = 2...6for range in ranges{ println(range)}//2.半开范围运算符:a..<用于定义一个从a~b(包含a,但不包含b)的所有值范围,用于遍历数组合适var books = ["Swift","Java","OC","PHP"]for index in 0..<books.count{ println("第\(index+1)种语言是:\(books[index])")}//MARK: - 比较运算符//> >= < <= == != === !==var k1 = NSMutableArray()var k2 = NSMutableArray()//判断两个对象的内容是否相等,输出trueprintln(k1 == k2)//判断两个对象是否指向同一个对象,输出falseprintln(k1 === k2)//MARK: - 逻辑运算符//&&与、 &不短路与、 ||或、 |不短路或、 !非、 ^异或//MARK: - 三目运算var g1 = 2var g2 = 4var g3 = g1 > g2 ? "g1大于g2" : "g1不大于g2"println(g3)//MARK: - nil合并运算符//a ?? b的作用是:判断可选类型变量a是否为nil,如果不为nil,将会返回可选变量a所包装的实际值,否则返回默认值b,b的类型与a一致let defaultName = "曹操"//定义可选类型变量,且不为空var name1 : String? = "刘备"println(name1 ?? defaultName)//定义可选类型变量,且为空var name2 : String?println(name2 ?? defaultName)//其实 a ?? b 相当于 a != nil ? a! : bprintln("Hello, World!")
0 0
- 运算符和表达式(一)
- 表达式和运算符
- 运算符和表达式
- 运算符和表达式
- 运算符和表达式
- 运算符和表达式
- 运算符和表达式
- 表达式和运算符
- 表达式和运算符
- 运算符和表达式
- 运算符和表达式
- 运算符和表达式
- 运算符和表达式
- 运算符和表达式
- 运算符和表达式
- 运算符和表达式
- 运算符和表达式
- 表达式和运算符
- 金蝶eas客户端更新报错404
- 第一节 linux常用命令
- Android OpenGL ES(四)----调整屏幕的宽高比
- android 5.0 远程开启服务学习笔记
- 排序算法系列之堆排序
- 运算符和表达式(一)
- C/C++中如何获取数组的长度?
- 最小生成树的 克鲁斯卡尔算法
- Day11(上).期中考试题
- Xcode 6制作动态及静态Framework
- Error:Flash Download Failed-"Cortex-M3"
- iOS 开发中常用的宏定义
- "vtable for __cxxabiv1::__class_type_info", referenced from:
- Linux 基本操作练习