介绍可以给现有的类、结构体、枚举类型、协议添加新的功能。扩展可以:添加计算属性定义方法提供新的构造函数使现有的类型遵守某协议使用extension关键字实现扩展。语法直接扩展某个类型extension SomeType {
// new functionality to add to SomeType goes here
}扩展某个类型以遵守一个或多个协议,但不能是继承某个类。extension
转载
2023-08-30 16:29:38
34阅读
Swift是一种流行的开发语言,最初由苹果公司开发,用于编写iOS和Mac应用程序。Swift 2.0引入了很多新功能和改进,其中一个重要的更新是Swift 2.0的兼容性扩展至Linux操作系统。这使得开发者可以在Linux上编写和运行Swift应用程序,这为Swift的跨平台能力增添了新的可能性。
在过去,Swift主要用于开发iOS和Mac应用程序,而在Linux上使用Swift相对较少。
原创
2024-05-28 11:47:15
104阅读
Swift的起源20世纪80年代,乔帮主创建NextStep公司,收购Objective-C语言版权,经过多年的维护和升级,都没有太缓解Objective-C语言的复杂性、编译成本高的问题。LLVM创始人Chris Lattner加入苹果公司后,开始开发苹果独立的语言(2010)。2014年6月3日,在2014WWDC大会上正式发布swift 1.0。2015年12月4日,苹果宣布Swi
原创
2016-03-03 10:53:13
1103阅读
闭包什么是闭包? 是一个自包含的功能块,可以在任何地方使用这个功能块,且可以将其传来传去 闭包可以捕获和存储其所在上下文的任意常量和变量的引用 其意义相当于函数及block的综合体三种形式: 全局函数是一个有名字但不会捕捉任何值的闭包
原创
2016-03-03 11:21:50
445阅读
常量与变量常量的定义使用let关键字 let number = 10变量的定义使用var关键字 var desc = "Hello world" 初始化运算符=,左右两边的空格是必须的 执行语句后面分号不再是必须的标示符的命
原创
2016-03-03 10:55:57
530阅读
类与实例(对象)类“是引用类型”,而非“值类型”使用class关键字定义类 class People { var name:String = "" var age = 0
原创
2016-03-03 11:23:11
616阅读
可选类型什么是可选类型? 可以被赋予nil值的类型,在类型后添加问号(?) 如Int类型的值为整型数,但不太好表示“空”的含义,Int?可以赋值为整型数和nil值 如: var age:I
原创
2016-03-03 10:58:41
750阅读
分支语句if语句的格式: if 条件 {} else {} if 条件 {} else if 条件 {} else {} 条件要求是一个Bool类型的值 Swift要求{}中只有一条语句,
原创
2016-03-03 11:06:05
394阅读
构造方法实例对象在被创建时,需要对存储属性初始化,两种方式: 方法一:在声明属性的同时设定初值(之前一直使用这种方式) 方法二:使用构造方法构造方法init:在对象创建时自动调用并对实例对象的存储属性进行初始化 a. 无需func关键字声明 b.&
原创
2016-03-03 11:26:01
473阅读
拓展:和oc的拓展方法功能差点儿相同。就是给已经存在的类,结构体。枚举,协议类型添加新的方法 拓展语法: 用extensionkeyword声明: extension SomeType {// new functionality to add to SomeType goes here} 拓展能够:
转载
2017-05-20 08:04:00
56阅读
2评论
Swift Json解析本文问了两种方式解析Json数据: 1.原生方法解析 2.第三方SwiftyJson解析 1.首先定义Json数据[
{
"name":"小炮",
"age":"21"
},
{
"name":"大头",
"age":"21"
}
]
转载
2023-07-03 16:48:02
49阅读
继承关系继承:“is a”的关系 继承只能用于类而不能用于结构体和枚举,继承还可以用于协议 语法:class 子类名 : 父类名 {} 继承中可以添加属性和方法 如: cl
原创
2016-03-03 11:24:37
977阅读
扩展(分类)类似于Objective-C中的分类功能 即:在现有的一个类型(类类型、结构体、枚举)的基础上添加功能(方法) 这个现有的类,可以是自定义的,也可以是其他框架中的(甚至没有源代码的) 提供了一定的“逆向开发”的能力格式: &nb
原创
2016-03-03 11:30:33
520阅读
泛型技术何为泛型? 简单理解:代码具有与类型无关的通用性Objective-C在Xcode7开始,引入了泛型技术的应用Swift支持相对比较完整的泛型技术泛型函数格式: func 函数名<类型>(参数列表)->返回类型 {}如: func my_swap<T>(inout value1 valu
原创
2016-03-03 11:32:31
936阅读
赋值、算数、位运算赋值运算符 = += -= *= /= ... Swift中 = 运算符本身不返回值了,即 if a = b 会报错。 加减乘除 Swift对加法运算进行了类型扩展,支持字符串和字符串的链接  
原创
2016-03-03 11:04:43
543阅读
自动引用计数ARC由于Swift出现的比较晚,所有并不像OC那样有ARC和MRC两种内存管理方式 在Swift统一使用非常方便的ARC进行管理内存自动引用计数,本质上仍然是面向引用计数管理实例对象被释放的时机 自动的含义是并不直接访问引用计数,而是统一判断准则在使用上使其透明管理范畴:类类型的实例对象强
原创
2016-03-03 11:31:42
707阅读
可选链之前介绍过可选类型,再来深化一下可选链的概念 如下面的代码,包含的符合关系:人—>宠物—>玩具 class Person { var pet:Pet? }  
原创
2016-03-03 11:29:15
607阅读
系统 ios9.1 语言swift2.0在app 里最常用的功能就是多媒体选择,首先我们storyboard 创建一个button 用于触发选择事件@IBAction func selectImageAction(sender: AnyObject) {}这时候通常会弹出来一个ActionSheet...
转载
2016-01-21 18:43:00
64阅读
2评论
函数的基本用法一个简单的函数,如下: func sayHello(personName:String) -> String { let s = "你好" + personName + "!"
原创
2016-03-03 11:19:49
506阅读
函数的类型函数具有类型的,如: func count(kids: Dictionary<String, String>) -> (girls:Int, boys:Int) 该函数的类型是 (Dictionary<String,String>)->(Int, Int) &nb
原创
2016-03-03 11:20:49
574阅读