如果耐不住寂寞,你就看不到繁华 [登录·注册]

吕滔博客

首页 开发 运维 工具 摄影
  • 01655

    PRINTABLE 和 DEBUGPRINTABLE

    memory在 Playground 和 Swift REPL 中这实现这两个接口并不会对原来输出产生影响,因此如果您需要验证本节代码内容的话,请在实际的工程项目中进行。在定义和实现一个类型的时候,Swift 中的一种非常常见,也是非常先进的做法是先定义最简单的类型结构,然后再通过扩展 (extension) 的方式来实现为数众多的接口和各种各样的功能。这种按照特性进行分离的设计理念对于功能的可扩展性的提升很有帮助。虽然在 Objective-C 中我们也可以通过类似的 protocol + cate...

    Swift 学习 Swift 发布于 2015-08-17
  • 02422

    可选类型完美解决占位问题

    memory本页包含内容:为Dictionary增加objectsForKeys函数Swift中更简便的方法内嵌可选类型提供一个默认值可选类型是Swift中新引入的,功能很强大。在这篇博文里讨论的,是在Swift里,如何通过可选类型来保证强类型的安全性。作为例子,我们来创建一个Objective-C API的Swift版本,但实际上Swift本身并不需要这样的API。为Dictionary增加objectsForKeys函数在Objective-C中,NSDictionary有一个方法-objects...

    Swift 学习 Swift 发布于 2015-05-22
  • 01671

    访问控制和protected

    memory原文再续,书折第一回。很多其他编程语言都有一种”protected“设定,可以限制某些类方法只能被它的子类所使用。Swift支持了访问控制后,大家给我们的反馈都很不错。而有的开发者问我们:“为什么Swift没有类似protected的选项?” 当我们在设计Swift访问控制的不同等级时,我们认为有两种主要场景:在一个APP里:隐藏某个类的私密细节。在一个开源框架里:不让导入这个框架的APP,随便接触框架的内部实现细节。上面的两种常见情况,对应着private和internal这两个等级。而...

    Swift 学习 Swift 发布于 2015-05-22
  • 02191

    Swift里的值类型与引用类型

    memory本页包含内容:值类型与引用类型的区别Mutation(修改)在安全中扮演的角色如何选择类型Swift里面的类型分为两种:值类型(Value Types):每个实例都保留了一分独有的数据拷贝,一般以结构体 (struct)、枚举(enum) 或者元组(tuple)的形式出现。引用类型(Reference Type):每个实例共享同一份数据来源,一般以类(class)的形式出现。在这篇博文里面,我们会介绍两种类型各自的优点,以及应该怎么选择使用。值类型与引用类型的区别值类型和引用类型最基本的分...

    Swift 学习 Swift 发布于 2015-05-22
  • 01716

    Swift与C语言指针友好合作

    memory本页包含内容:用以输入/输出的参数指针作为数组使用的参数指针用作字符串参数的指针指针参数转换的安全性Objective-C和C的API常常会需要用到指针。Swift中的数据类型都原生支持基于指针的Cocoa API,不仅如此,Swift会自动处理部分最常用的将指针作为参数传递的情况。这篇文章中,我们将着眼于在Swift中让C语言指针与变量、数组和字符串共同工作。用以输入/输出的参数指针C和Objective-C并不支持多返回值,所以Cocoa API中常常将指针作为一种在方法间传递额外数据...

    Swift 学习 Swift 发布于 2015-05-22
  • 01805

    WWDC里面的那个“大炮打气球”

    memory很多小伙伴说,对WWDC上介绍Swift语言时,演示的那个“大炮打气球”的Ballons项目很感兴趣。Ballons不但展现了playgrounds许多很赞的特性,还让我们看到写代码的过程,原来可以这么互动,这么好玩。现在你可以下载这个Ballons.playground的教学版本,学习这些有趣的效果是怎么实现的。教学版本里除了源文件,还有相关说明文档,我们还出了一些小小的实验题,你可以动手修改代码,然后在右侧马上看到效果。这个playground文件用到了SpriteKit的新特性,因此...

    Swift 学习 Swift 发布于 2015-05-22
  • 02415

    造个类型不是梦-白话Swift类型创建

    memory本页包含内容:自定义原型实现默认值支持基本布尔型初始化支持Bool类型判断支持兼容各们各派的类型完善OCBool的布尔基因体系小伙伴们,Swift中的Bool类型有着非常重要的语法功能,并支撑起了整个Swift体系中的逻辑判断体系,经过老码的研究和学习, Bool类型本身其实是对基础Boolean类型封装,小伙伴们可能咬着手指头问老码,怎么一会Bool类型,一会Boolean类型,其区别在于,前者是基于枚举的组合类型,而后者则是基本类型,只有两种true和false。自定义原型接下老码根据...

    Swift 学习 Swift 发布于 2015-05-22
  • 01574

    Access Control 权限控制的黑与白

    memory如果您之前没有接触过权限控制,先来听一个小故事:小明是五道口工业学院的一个大一新生,最近他有点烦恼,因为同屋经常用他的热水壶,好像那是自己家的一样,可是碍于同学情面,又不好意思说。直到有一天,他和学姐小K吐槽。学姐听了之后,说:大学集体生活里面,大部分东西都是默认室友可以共用的。如果你不想别人拿,我可以帮你做封印,只要打上private标记,它们就看不到你的东西,更加用不了你的东西了。小明说哇靠学姐你还会妖法......Swift语言从Xcode 6 beta 5版本起,加入了对权限控制(...

    Swift 学习 Swift 发布于 2015-05-22
  • 01531

    语句

    memory本页包含内容:循环语句分支语句带标签的语句控制传递语句在 Swift 中,有两种类型的语句:简单语句和控制流语句。简单语句是最常见的,用于构造表达式和声明。控制流语句则用于控制程序执行的流程,Swift 中有三种类型的控制流语句:循环语句、分支语句和控制传递语句。循环语句用于重复执行代码块;分支语句用于执行满足特定条件的代码块;控制传递语句则用于修改代码的执行顺序。在稍后的叙述中,将会详细地介绍每一种类型的控制流语句。是否将分号(;)添加到语句的结尾处是可选的。但若要在同一行内写多条独立语...

    Swift 学习 Swift 发布于 2015-05-22
  • 01722

    语法总结

    memory本页包含内容:语句(Statements)泛型参数(Generic Parameters and Arguments)声明(Declarations)模式(Patterns)特性(Attributes)表达式(Expressions)词法结构(Lexical Structure)类型(Types)语句语句语法 语句 → 表达式 ; 可选 语句 → 声明 ; 可选 语句 → 循环语句 ; 可选 语句 → 分支语句 ; 可选 语句 → 标记语句(Labeled Statement) ...

    Swift 学习 Swift 发布于 2015-05-22
  • 01589

    泛型参数

    memory本页包含内容:泛型形参子句泛型实参子句本节涉及泛型类型、泛型函数以及泛型构造器的参数,包括形参和实参。声明泛型类型、函数或构造器时,须指定相应的类型参数。类型参数相当于一个占位符,当实例化泛型类型、调用泛型函数或泛型构造器时,就用具体的类型实参替代之。关于 Swift 语言的泛型概述,见泛型(第二部分第22章)。泛型形参子句泛型形参子句指定泛型类型或函数的类型形参,以及这些参数的关联约束和要求。泛型形参子句用尖括号(<>)包住,并且有以下两种形式:<generic par...

    Swift 学习 Swift 发布于 2015-05-22
  • 01492

    模式(Patterns)

    memory本页内容包括:通配符模式(Wildcard Pattern)标识符模式(Identifier Pattern)值绑定模式(Value-Binding Pattern)元组模式(Tuple Pattern)枚举用例模式(Enumeration Case Pattern)类型转换模式(Type-Casting Patterns)表达式模式(Expression Pattern)模式(pattern)代表了单个值或者复合值的结构。例如,元组(1, 2)的结构是逗号分隔的,包含两个元素的列表。因为...

    Swift 学习 Swift 发布于 2015-05-22
  • 01635

    特性

    memory本页内容包括:声明特性类型特性特性提供了关于声明和类型的更多信息。在Swift中有两类特性,用于修饰声明的以及用于修饰类型的。例如,required特性,当应用于一个类的指定或便利初始化器声明时,表明它的每个子类都必须实现那个初始化器。再比如noreturn特性,当应用于函数或方法类型时,表明该函数或方法不会返回到它的调用者。通过以下方式指定一个特性:符号@后面跟特性名,如果包含参数,则把参数带上:@attribute name @attribute name(attribute arg...

    Swift 学习 Swift 发布于 2015-05-22
  • 01845

    声明

    memory本页包含内容:模块范围代码块引入声明常量声明变量声明类型的别名声明函数声明枚举声明结构体声明类声明协议声明构造器声明析构声明扩展声明下标脚本声明运算符声明声明修饰符一条声明可以在你的程序里引入新的名字和构造。举例来说,你可以使用声明来引入函数和方法,变量和常量,或者来定义新的命名好的枚举,结构,类和协议类型。你也可以使用一条声明来延长一个已经存在的命名好的类型的行为。或者在你的程序里引入在其他地方声明的符号。在Swift中,大多数声明在某种意义上讲也是执行或同事声明它们的初始化定义。这意味...

    Swift 学习 Swift 发布于 2015-05-22
  • 01640

    表达式(Expressions)

    memory本页包含内容:前缀表达式(Prefix Expressions)二元表达式(Binary Expressions)赋值表达式(Assignment Operator)三元条件运算符(Ternary Conditional Operator)类型转换运算符(Type-Casting Operators)主要表达式(Primary Expressions)后缀表达式(Postfix Expressions)Swift 中存在四种表达式: 前缀(prefix)表达式,二元(binary)表达式,...

    Swift 学习 Swift 发布于 2015-05-22
  • 123

    网站状态

    • 栏目分类:49个
    • 发布文章:1325篇
    • 用户评论:697条
    • 开博至今:3999天

    正则速查

    [abc] 匹配中括号中的单个字符,如a或b或c
    [^abc] 匹配除了a、b、c等字符的其他单个字符
    [a-z] 匹配一个字符范围,如a到z
    [a-zA-Z] 匹配一个字符范围,如a-z 或 A-Z
    ^ 匹配行的开始
    $ 匹配行的结束
    \A 匹配一个字符串的开始
    \z 匹配一个字符串的结束
    . 匹配任意单个字符
    \s 匹配空白字符,如空格,TAB
    \S 匹配非空白字符
    \d 匹配一个数字
    \D 匹配非数字
    \w 匹配一个字母
    \W 匹配非字母
    \b 匹配字符边界
    (...) 引用所有括号中的内容
    (a|b) a或者b
    a? 零个或1个a
    a* 零个或多个a
    a+ 1个或多个a
    a{3} 3次重复的a
    a{3,} 3次或3次以上重复的a
    a{3,6} 3到6次重复的a

    修正符

    /g 查找所有可能的匹配
    /i 不区分大小写
    /m 多行匹配
    /s 单行匹配
    /x 忽略空白模式
    /e 可执行模式,PHP专有
    /A 强制从目标字符串开头匹配
    /D 使用$限制结尾字符,则不允许结尾有换行
    /U 只匹配最近的一个字符串;不重复匹配

    最新回复

    • tomxuetao: 能个实例吗?
    • memory: 哈哈哈。。。话说也没毛病。
    • 硫酸亚铁: 看了文章觉得自己已经是松鼠癌了 东西总是先占着 反正我有 什么...
    • xl: 支持一下
    • iHerb海淘攻略: 感谢分享
    • memory: POINT
    • sunyunlin: 数据库应该建些什么字段?
    • pengcheng: 已解决
    • pengcheng: Oops! It seems that sphinx was b...
    • 券都有: 感谢分享
    • memory: 这是我3年前玩过一次,当时因为安装完后,发现日常办公还好,但是好...
    • sdf: 想问一下,激活工具激活后,后面会出现提示要再次重新激活吗?
    • memory: 你要用碗装我吗?还是要我把扔的扔进你碗里???!!! &^_^&
    • 薛才杰: 同感,快扔到我的碗里来。。。
    • memory: 要说明一下,在大陆及香港的云主机或VPS,都是不支持的。原因都懂...
    • 历史趣谈LishiQtan: 很好的文章,值得收藏
    • memory: 现在回头看,,,这么烂的代码,也是醉了.