// 初始化:字面量、初始化器语法、isEmpty检查空串
// 单行字面量:" " 包裹固定顺序
// 多行字面量:""" """ 换行符结尾\
// 扩展字符串分割符(Raw String)
// #""# ##1\##n2\n3"##
let str = #"123"#
let strr = ##"1\##n2\##n3"##
let strrr = "1\n2\n3...
阅读全文>>
/*
定义
1.元组把多个值合并成单一的复合类型的值
2.元组内的值可以是任意类型,而且可以是不同类型
let var 可变/不可变
1.不能改变总数 不能改变类型(any类型除外)
2.只取其中部分变量,其余可用_代替
3.可作为函数返回值(可以在函数的返回部分命名)
元素命名
1.元组中的每一个元素可以指定对应的元素名称
...
阅读全文>>
/*
为什么需要optional
OC:
1.nil是无类型的指针 (老师nil、学生nil 无法区分)
2.数组、字典、集合不允许放 nil
3.运行时,所有变量都可能为nil
4.只能用在对象上,其他特殊值 NSNotFound 用不了
Optional:变量后面加?
意义:1.这里有个值,等于x  ...
阅读全文>>
let a1 = 1
let a2 = ""
let = "Cry"
let π = 3.1415926
var b = 2
let c,d: Int
var e,f: String
let i: Int = 1, j: Float = 2.0, k: String = "Three"
let l: Bool = true
...
阅读全文>>
/*
一、Swift 和 OC 区别
1.编程范式:
Swift:面向协议编程、函数式编程(闭包)、面向对象编程
Objective-C:面向对象编程, +RAC
2.类型安全:
Swift:类型校验,不匹配抛出错误
OC:编译不报错
3.值类型增强
Swift:结构体struct、枚举enum、元祖tuple 都是值类型。
严格被一个所有者控制,持有副本,不会连带修改。
OC:指...
阅读全文>>