1、语句末尾的分号可有可无,类似python和JavaScript。

print("hello world!")

2、let定义常量,var定义变量

let aConstant = 1
var aVar: String
aVar = "abc"

3、下划线

1)忽略区间值

for _ in 0...4 {

}

4、范围操作符

1)闭合操作符

for _ in 0...4 {

}

2)半开操作符

for _ in 0..<5 {

}

5、结构体是值类型

struct STR {
var a: Int = 1
}
var s1 = STR()
var s2 = s1
s2.a = 2
print("struct value copy \(s1.a), \(s2.a)") 输出:
struct value copy 1, 2

6、类是引用类型

class CLS {
var a: Int = 1
}
var c1 = CLS()
var c2 = c1
c2.a = 2
print("class reference copy \(c1.a), \(c2.a)") 输出:
class reference copy 2, 2

7、函数

8、提前退出

9、Swift既是面向对象,又是函数式编程语言。

1)支持类的封装、继承和多态。

2)支持map、reduce、filter和flatmap这些数学函数。

10、访问权限

11、final

12、defer

13、泛型

C++中也有泛型的概念。泛型可以让函数和类型变得更加灵活,重用率更高。

func swapTwoValues<T>(_ a: inout T, _ b: inout T) {
let temporaryA = a
a = b
b = temporaryA
}

14、闭包

15、枚举

16、集合(Collection)类型

1)三种集合类型:数组(Array),集合(Set),字典(Dictionary)。

Swift 重点知识汇总的更多相关文章

  1. Objective-C NSTableView重点知识汇总

    NSTableView不可滚动,通常将其嵌入NSScrollView以支持NSTableView. Cell Based View Based 1.遵循协议NSTableViewDataSource, ...

  2. [转帖]xserver相关知识汇总

    xserver相关知识汇总 https://blog.csdn.net/QTVLC/article/details/81739984   本文主要是从以下几个方面介绍xorg-xserver 相关的知 ...

  3. Oracle手边常用70则脚本知识汇总

    Oracle手边常用70则脚本知识汇总 作者:白宁超 时间:2016年3月4日13:58:36 摘要: 日常使用oracle数据库过程中,常用脚本命令莫不是用户和密码.表空间.多表联合.执行语句等常规 ...

  4. Oracle 数据库知识汇总篇

    Oracle 数据库知识汇总篇(更新中..) 1.安装部署篇 2.管理维护篇 3.数据迁移篇 4.故障处理篇 5.性能调优篇 6.SQL PL/SQL篇 7.考试认证篇 8.原理体系篇 9.架构设计篇 ...

  5. Vertica 数据库知识汇总篇

    Vertica 数据库知识汇总篇(更新中..) 1.Vertica 集群软件部署,各节点硬件性能测试 2.Vertica 创建数据库,创建业务用户测试 3.Vertica 数据库参数调整,资源池分配 ...

  6. 【转】ACM博弈知识汇总

    博弈知识汇总 转自:http://www.cnblogs.com/kuangbin/archive/2011/08/28/2156426.html 有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍 ...

  7. 最全的jQuery知识汇总

    本帖最后由 断天涯大虾 于 2016-12-26 10:22 编辑<ignore_js_op> jQuery是什么? jQuery是javascript编写一个可重用的JavaScript ...

  8. jquery基础知识汇总

    jquery基础知识汇总 一.简介 定义 jQuery创始人是美国John Resig,是优秀的Javascript框架: jQuery是一个轻量级.快速简洁的javaScript库.源码戳这 jQu ...

  9. ACM博弈知识汇总(转)

    博弈知识汇总 有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍或是围棋子等等均可.两个人轮流从堆中取物体若干,规定最后取光物体者取胜.这是我国民间很古老的一个游戏,别看这游戏极其简单,却蕴含着深刻 ...

随机推荐

  1. nginx简单使用配置

    使用nginx首先要明确使用场景,这里是一台服务器实现多种类型访问:网站首页访问,GitLab访问,note(私人springboot项目),静态文件访问. 下面是一份配置文件 nginx.conf, ...

  2. Tomcat意外宕机分析

    之前在网上看过一篇文章,是讲Tomcat进程意外退出的,我看完感觉好奇,自己也测试了下,果然是有这种问题,所以自己也借此总结一下. 先简单说下测试过程,先创建一个web服务启动 test.sh,内容如 ...

  3. lfs(systemv版本)学习笔记-第1页

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 一名linux爱好者,记录构建Linux From Scratch的过程 经博客园-骏马金龙前辈介绍,开始接触学习lfs,用博客 ...

  4. 《Inside C#》笔记(十三) 多线程 下

    一 任务调度 当一个线程的时间片被用尽后,处理器会切换到另一个线程,但关于如何确定执行哪一个线程呢,这就涉及到了线程或任务的优先级. a) 每个线程都有优先级,任务调度算法会根据各线程的不同优先级来决 ...

  5. ViewPager+Fragment切换卡顿解决办法

    1.ViewPager设置预加载 我有4个tag,都不想被销毁,设置预加载个数为3. ViewPager viewPager; viewPager.setOffscreenPageLimit(3); ...

  6. spring BeanFactory及ApplicationContext中Bean的生命周期

    spring bean 的生命周期 spring BeanFactory及ApplicationContext在读取配置文件后.实例化bean前后.设置bean的属性前后这些点都可以通过实现接口添加我 ...

  7. css,响应鼠标事件,文字变色

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. django模板语言之Template

    当前端的一些数据需要后端传送过来并展示时,用到了django的模板语言,模板语言的作用就是,在后端把一些处理好的数据,通过模板语言所规定的格式,通过render渲染,放到前端页面固定的位置展示.这之间 ...

  9. [HDFS_4] HDFS 的 Java 应用开发

    0. 说明 在 IDEA下 进行 HDFS 的 Java 应用开发 通过编写代码实现对 HDFS 的增删改查操作 1. 流程 1.1 在项目下新建 Moudle 略 1.2 为 Moudle 添加 M ...

  10. shell基本语法记录

    Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个 ...