- 博客(12)
- 收藏
- 关注
原创 Swift-匹配-Matching
enum TrainStatus { case OnTime case Delayed(minutes: Int) //关联值:Int 参数名minutes可写可不写 init(){ //设置默认值 self = OnTime } var desc: String{ switch self{
2015-01-31 20:26:43 502
原创 Swift-函数式编程、捕获、闭包内存管理
import UIKit var words = ["abd","angry","anger","hungry"] words.filter{ (a: String) -> Bool in return a == "abd" } //按闭包的规则筛选 .map{ (a: String)-> String in return a+"C" }
2015-01-24 21:16:31 679
原创 Swift-内存管理
//内存管理/自动引用计数/弱引用/非持有引用 //引用计数:每个对象都有一个引用计数,用来记录有多少人(对象或变量)需要该对象活着 //当引用计数>0的时候,该对象会保留在内存中 //当引用计数=0的时候,该对象会立刻从内存中销毁 //自动引用计数不等于垃圾回收机制,垃圾回收机制是内存使用特别大/紧缺时,会检查各种结构(比如堆栈)、对象,在需要清理时给予清理 //弱引
2015-01-19 22:55:45 541
原创 Swift-初始化-initialize
import UIKit //为储值属性设置默认值或在构造器(init)中为其赋值时,是不会触发属性观察的。 struct Color { var color: String } class Car { var paintColor: Color func fillGasTank() {} init(CarCol
2015-01-18 20:32:17 1517
原创 Swift-可选链2
//************************* // // 先定义三个类 // //************************* class Room { var name: String init(name: String){ self.name= name } } class Residenc
2015-01-17 16:29:56 512
原创 Swift-可能值1-可选绑定-可选链
//场景:用户输入姓名,可能可以转换为数字,也可能不行 //letage = response.toInt() var optionalNumber: Int? //默认初始化为nil let response = "字符串" let age = response.toInt() //一个查找的方法,可能查不到值,那么返回值可以设置为可能值 func F
2015-01-15 19:48:39 732
原创 Swift-下标-subscript
import UIKit //数组和字典的取值都是用的下标 //可以自定义下标的具体实现 //可以为类、结构体和枚举定义下标 //下标的形参和返回值都是可以任意类型的。 //下标可以使用变量参数和可变参数,但不能使用输入输出参数 //===下标语法=== /* subscript(index:Int) -> Int { get{ //返回与形参匹配的
2015-01-12 20:34:07 622
原创 Swift-重写-override
//定义一个基类 class Vehicle { var numberOfWheels: Int var maxPassengers: Int func description() -> String { return "\(numberOfWheels)wheels; up to \(maxPassengers) passen
2015-01-09 20:42:02 6695
原创 Swift-属性-Properties
//-----属性观察----- //StepCounter1使用计算属性的set方法 //StepCounter2使用属性观察didSet方法 //属性观察可用于全局变量和本地变量,全局变量实在函数、方法、闭包或任何类型之外定义的变量;本地变量实在函数、方法或闭包内部定义的变量 //全局常量或变量都是延迟计算的 class StepCounter1 { var in
2015-01-07 20:38:31 496
原创 Swift-泛型
//******************************** // // 泛型: // 可以理解为一种通用的模板,适用于任何的函数和类型的模板 // 格式:在函数名或类型名后写,T是随意一个字符 // 实例化时,需要在类型名后跟如下面的Stack // //******************************** //例子:非泛型的栈结构的结构体(比如Int
2015-01-06 19:51:38 402
原创 Swift-扩展
//******************************** // // 扩展-extension的功能: // 1.添加计算属性和静态计算属性 // 2.定义实例方法和类型方法 // 3.提供新的构造器 // 4.定义下标 // 5.定义和使用新的嵌套类型 // 6.使一个已有类型符合某个协议 // // 扩展的代码跟被扩展者可以不在一个文件内
2015-01-04 20:58:46 509
原创 Swift-枚举
enum 枚举变量类型名: Int { case 枚举值1 = 1 case 枚举值2 = 2, 枚举值3 = 3, 枚举值4 = 4 case 枚举值5 = 5, 枚举值6,枚举值7 //如果枚举值是顺序变化的,可以缩写 } //====================================
2015-01-03 16:26:41 555
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人