【iOS】Swift数据类型、运算符、新增语句等小结
2014-09-14 06:57
495 查看
总结复习一些基本的东西,主要是与OC不同的以及新增的。
一、基本数据类型
Int、Float、Double、Bool、Character、String(首字母都大写)
Array、Dictionary、元组类型(Tuple)、可选类型(Optional)
指定数据类型:
1.2 浮点
1.3 Bool ,跟上主流了。。。。
1.4 元祖
1.5 可选(要么返回该值,要么为nil)
二、数据的输出格式 && 类型转换 && 类型别名
简化了不少。
类型别名就相当于C中的typedef
三、新加的几个运算符
3.1 范围运算符,上篇WWDC上用过
3.2 溢出运算符。(新增加的,可用来处理数据溢出的情况)
&+溢出加 &-溢出减 &*溢出乘 &/溢出除 &%溢出余
3.3 一些注意的地方
非0即真这种C语言的东西遭淘汰!赋值更加灵活,且赋值没有返回值。
四、流程控制语句
新增加for in语句,同时switch语句更加灵活。
4.1 循环for in
1)与C语言中的不同. 不必每个case下写break,自动break
2)每个case后面必须有可执行语句, 否则会报错
3)每个case都可以匹配多个条件, 也可以填写一个范围
4)switch要保证处理所有的情况,一定加上default.
5)case还可以匹配元祖
评价:确实简化不少,写起来也挺顺手。
[b]示例代码见:http://github.com/xn4545945/SwiftLearning
[/b]
参考:
The Swift Programming Language
Apple Dev Center
转载请注明出处:http://blog.csdn.net/xn4545945
一、基本数据类型
Int、Float、Double、Bool、Character、String(首字母都大写)
Array、Dictionary、元组类型(Tuple)、可选类型(Optional)
指定数据类型:
let a:Int = 10 //指定数据类型。 一般不需要指定,会自动判断类型。 (使用时需初始化)1.1 整形
//1.1整形 let maxInt = Int.max //获取Int类型的最大值 let minInt = Int.min let a1 = 10 //十进制 let a2 = 0b1010 //二进制以0b开头 let a3 = 0o12 //八进制以0o开头 let a4 = 0xA //十六进制0x
1.2 浮点
//1.2浮点型Float,Double let b1 = 0.123 //默认是Double let b2 = 0.123e3 //123.0
1.3 Bool ,跟上主流了。。。。
//1.3Bool (不是YES/NO了) let c1 = true let c2 = false
1.4 元祖
//1.4元组. 可以是N个任意类型的数据 let tup1 = (age:1,name:"abc",hight:2,jj:0.1) //带元素名称 let tup2 = (1,"abc",2,0.1) //省略元素名称 var tup3:(Int,String) = (1,"haha") //指定类型. (指定类型后就不能再写元素名称了) var (t1,t2) = tup3 //直接弄2个变量接收元祖 var (_,t3) = tup3 //只接收一个
1.5 可选(要么返回该值,要么为nil)
var possibleNumber = "123" var convertedNumber:Int? = possibleNumber.toInt() //转换可能失败. (在类型后面加?表示可选) //获取可选类型的值,需要在后面加上! if convertedNumber != nil{ println("convertedNumber的值为\(convertedNumber!)") } //OC中的nil指向一个不存在的对象, 而Swift中nil不是指针,而是一个缺省值 //possibleNumber = nil //普通的变量是不能赋值为nil //convertedNumber = nil //可选类型能赋值为nil, 当没有值时,自动赋值为nil if let my = convertedNumber { println("这是可选绑定!\(my)") }
二、数据的输出格式 && 类型转换 && 类型别名
简化了不少。
//2.1可以在数字中增加额外的0或_, 增强可读写 let d1 = 000123 let d2 = 00123.0012300 let d3 = 1_2_3 //let d4 = _123 //错误
//2.2类型转换 let e1 = 1 let e2 = 0.12 //let e3 = e1 + e2 //错误, 类型不同不能直接相加 let e3 = Double(e1) + e2 //类型转换
类型别名就相当于C中的typedef
//2.3 类型别名 typealias typealias XNInt = Int let test:XNInt = 10
三、新加的几个运算符
3.1 范围运算符,上篇WWDC上用过
//3.1 范围运算符..< ... for index1 in 1...10{ } //表示闭包[1 10] for index2 in 1..<10{ } //表示半闭合[1 10)
3.2 溢出运算符。(新增加的,可用来处理数据溢出的情况)
&+溢出加 &-溢出减 &*溢出乘 &/溢出除 &%溢出余
let f1 = UInt.max //let f2 = x + 1 //这样写会上溢 let f2 = f1 &+ 1 //溢出加. 值为0. 变为溢出后的最小值 let g1 = 10 //let g2 = g1 / 0 //会报错 let g2 = g1 &/ 0 //值为0 //let g3 = g1 % 0 //会报错 let g3 = g1 &% 0 //值为0
3.3 一些注意的地方
非0即真这种C语言的东西遭淘汰!赋值更加灵活,且赋值没有返回值。
let (x,y) = (1,2) //整体赋值 //if(x = y){ } //这样写是错误的. 能防止将==写成= //if(10){ } //这样写也是错误的. 非0即真已经不适用. if(true){ }
四、流程控制语句
新增加for in语句,同时switch语句更加灵活。
4.1 循环for in
for h1 in 1...10{ println(h1) } for _ in 1..<10{ //不需要用到范围中的值时,直接忽略用_ println("####") }4.2 标签 (可用来跳出指定循环,了解即可)
xn: for _ in 1...3 { println("***") for tmp in 1...5{ println("###") //指定退出 if tmp == 3{ break xn } } }4.3 Switch语句
1)与C语言中的不同. 不必每个case下写break,自动break
2)每个case后面必须有可执行语句, 否则会报错
3)每个case都可以匹配多个条件, 也可以填写一个范围
4)switch要保证处理所有的情况,一定加上default.
5)case还可以匹配元祖
let score = 10 switch score{ case 0...3: println("差") case 4,5,6,7: println("良") case 8...10: println("优") default: println("超神") }
评价:确实简化不少,写起来也挺顺手。
[b]示例代码见:http://github.com/xn4545945/SwiftLearning
[/b]
参考:
The Swift Programming Language
Apple Dev Center
转载请注明出处:http://blog.csdn.net/xn4545945
相关文章推荐
- 黑马程序员_Java基础_常用基础内容(进制转换、基本数据类型、运算符、流程控制语句等)
- Oracle Class2. SQL查询和SQL函数(Oracle数据类型,ddl,dml,dcl,事务控制语言tcl,sql操作符,sql函数,select语句,运算符,分析函数,临时表)
- Swift 学习笔记一 基本数据类型和简单语句语法
- 【js】day02_语法规范_标识符_数据类型_运算符_控制语句
- ios开发学习----swift学习之(一)基础数据类型
- Obj-c基本语法、数据类型、运算符和控制语句
- Java基础知识(数据类型、标识符、变量、运算符和流程控制语句)
- Java语言基础(二)——数据类型、运算符和流程控制语句
- 黑马程序员之 ---- 基础语法上(关键字、标识符、进制、变量、数据类型、运算符、语句)
- 黑马程序员——ios开发基础之C语言数据类型、运算符与输入输出
- java基本数据类型及运算符小结
- iOS开发Swift-字符串和数据类型
- java学习笔记---数据类型、运算符和控制语句
- 第3篇:swift语言笔记:基本语法/运算符/数据类型/字符串等关键点
- 黑马程序员——ios基础---C语言:数据类型、运算符、选择结构
- 【学习ios之路:C语言】数据类型、常量变量、运算符、表达式、格式化输入输出
- C++小结(二)—数据类型,运算符,优先级
- js数据类型以及"==","==="运算符、if()语句
- 《IOS_C语言--进制,C数据类型、常量、变量、运算符、表达式、格式化输入输出》
- 慕课学习C笔记01-第1~4章数据类型、运算符和程序结构语句