Swift 学习笔记

1. 每一门语言都是要用来编写程序的,那程序是什么?可能大家都知道,程序 = 数据结构 + 算法,任何一门语言的编程方式又有 面向过程 和 面向对象 之分。所以根据坐标系语言学习法,将 Swift 语言知识分为 4 类

--面向过程  数据结构(1-1象限)

常量/变量,基本数据类型

--面向对象  数据结构(1-2象限)

--面向过程  算法 (2-1)

--面向对象  算法 (2-2)


知识点:(1-1象限)

1. 常量和变量

2. 类型转换   很简单,要转换的类型(value)   Double(a)  Int("32") ...

    类型别名   typealias s = String ;  let d : s = 'hhh'

3. Swift 中新的数据类型:元组(Tuples)     

var  tups = ("hello", 123, 10.10)  

println(tups.1)      // 就是多类型数组,设计它的目的应该是有助于函数返回值返回多个类型

4. 函数定义

func 函数名(参数名:参数类型) -> 返回值    func sayHello(username:String, age:Int) -> String        

多返回值   func say() -> (name:String, age:Int) {  return ("xxx",11) } 

外部参数(即在调用的时候必须说明)func say(name n:String, a:int) -> String(){}

外部参数调用时:say(name: 'xx', 30)   如果感觉太麻烦了,

直接 func say(#name:String) ,  name即为外部参数了

默认参数: func say(#name:String, age: Int = 10)  有默认值的参数默认就是外部参数

可变参数: func say(name:String...)

输入输出参数(即让参数变成了形参):

5. 函数类型(swift独有)类似于 C 中的函数指针, C# 中的 delegate, 目的是把函数当成一个普通变量来使用。

6. Closure

7. Enumerations

下面开始 2-2 象限的学习,即面向对象的数据结构

1. 类

class TV { }

var myTv = TV()

2. 构造函数init 和析构函数 deinit

3. 类 和 结构体的异同点:

相同点:

--都是有内部变量和函数

--都可以有初始化函数

--都可以用协议

不同点:

--类有继承

--类可以多重引用

--类有析构函数

--类是引用类型,结构体是值类型

4. 协议(protocol)其实就是 JAVA 中的接口

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容