摘要: 总结如下: NUll就是C语言中的一个空指针,在Objective-C中也可以使用; nil是一个空对象,已经完全从内存中消失了; [NSNull null]是值为空的对象,而如果我们想表达“我们需要有这样一个对象,但这个对象里什么也没有”的观念时,就需要[NSNull null]这个对象了。 oc 阅读全文
posted @ 2019-08-15 11:24 白色茉莉 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 评判算法的好坏: 1.执行时间的长短 “事后统计法” 缺点:太依赖硬件 和 运行时环境不确定 结果不一样。 注意:一般从正确性 、可读性、 健壮性来评估。 时间复杂度:估算指令执行次数(估算时间)。 空间复杂度:估算所需占用的存储空间。 2.时间复杂度也叫“渐进时间复杂度” 大O表示法估算:忽略常数 阅读全文
posted @ 2019-08-13 10:35 白色茉莉 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 直接上总结: 1.字符串处理示例: 2.substring 3.4.多行字符串 和桥接转换示例 5.桥接转换图 阅读全文
posted @ 2019-08-06 12:54 白色茉莉 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 总结如下: 1.示例 2.字面量协议 3.示例: 4.字面量协议的应用 通过字面量初始化一个实例 5.字面量协议的应用示例: 阅读全文
posted @ 2019-08-02 11:26 白色茉莉 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 类型转换模式(一) 1.示例 2.示例 自定义表达式模式(二) 1.示例 if case 60 = stu { print(">= 60") } 示例2.3. 4.涉及函数式编程 pattern:case后边的东西 value:switch后边的东西 5.设计函数式编程 6. 示例* where(三 阅读全文
posted @ 2019-08-01 16:53 白色茉莉 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 模式:用于匹配的规则 通配符匹配(一) _ 匹配任何值 _? 匹配非nil值 1.示例: 标识符模式(二) //给对应的变量 常量名赋值 var age = 10 let name = "Jack" 值绑定模式(三) let point = (1, 2) switch point { case le 阅读全文
posted @ 2019-08-01 16:09 白色茉莉 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 直接上总结: 四种指针:前俩种是泛型 后俩种是普通的指针 /* UnsafePointer UnsafeMutablePointer UnsafeRawPointer UnsafeMutableRawPointer */ 简单示例(一) 1.泛型指针示例: 2.普通指针示例: 3.应用示例: 获得变 阅读全文
posted @ 2019-07-31 13:30 白色茉莉 阅读(351) 评论(0) 推荐(0) 编辑
摘要: 内存访问冲突总结如下: 存访问冲突会在两个访问满足下列条件时发生: a.至少一个是写操作 b.他们访问的是同一块内存 c.他们访问时间重叠(比如在同一函数中) 1.示例: 2-3-4.示例: 5.重点是出现错误要会找到问题 勿纠结!!! 如果下面条件满足,就说明重叠访问结构体的属性是安全的: /* 阅读全文
posted @ 2019-07-30 16:17 白色茉莉 阅读(1009) 评论(0) 推荐(0) 编辑
摘要: 希望有机会和大家多多交流...... weak 、unowned 都能解决循环引用的问题,unowned比weak要少消耗性能 对比在哪种情况下使用: 1.在生命周期中可能会变成nil使用weak 2.初始化赋值后再也不会变为nil的使用unowned 闭包的循环引用总结如下: 闭包表达式默认会对用 阅读全文
posted @ 2019-07-30 14:28 白色茉莉 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 小伙伴有什么建议和想法,欢迎前来交流...... action,总结: 非逃逸闭包和逃逸闭包一般当做参数传递给函数 非逃逸闭包:闭包调用发生在函数结束前,闭包调用在函数作用域内 逃逸闭包:闭包调用有可能在函数结束后调用,闭包调用逃离了函数的作用域,需要@escaping声明 1.示例: 2.对比👇 阅读全文
posted @ 2019-07-30 14:02 白色茉莉 阅读(794) 评论(0) 推荐(0) 编辑