Swift系列一 - 数据类型

2021-05-27 14:21:18 浏览数 (1)

如果你习惯了OC的语法,第一次接触Swift的语法可能会有点抗拒,因为Swift的语法有点怪。但如果你有前端的基础,学Swift可能会有点吃力,如果你有C 的基础可能会学得比较快点。不管你有什么样的语法基础,学会Swift后你都会觉得这是门优秀的语言,总之相比哥哥OC更简洁,更高效。现在Swift的ABI版本已经到5.2了,总体趋于稳定,社区也很活跃,是系统学习的好时机。

一、打印(print)

可以认为是C的扩展写法:

代码语言:javascript复制
let word = "world"
print("print output") // 输出:print output
print("hello (word)") // 输出:hello world
  • 以往OC中打印变量使用NSLog("hello_%@",var),Swift使用(变量)

二、分号

  • 一句代码尾部可以省略分号(;
  • 多句代码写到同一行时必须用分号(;

三、注释

  • 单行注释(//)
  • 多行注释--支持多行嵌套,但必须是双标签(/**/)
代码语言:javascript复制
// 单行注释

/*
 多行注释
 */

/*
 1.多行注释
 /* 多行注释的嵌套 */
 2.多行注释
 */

Playground的注释支持markup语法(和markdown相似) 如何开启markup语法预览?

  • 选中当前行 -> 菜单栏 -> Editor -> Show Rendered Markup
  • 开启渲染:Show Rendered Markup
  • 关闭渲染:Show Raw Markup
  • 注意:markup语法只在Playground中有效

四、Markup语法

代码语言:javascript复制
//: # 一级标题
//: ## 二级标题

/*:
 # 一级标题
 
 ## 无序列表
 - 第一个元素
 - 第二个元素
 
 ## 有序列表
 1. 第一个元素
 2. 第二个元素
 
 ## 笔记
 > 这是一个笔记

 ## 分割线
 ---
 
 ## 图片
 ![图片描述](图片链接)
 
 ## 链接
 [链接标题](链接地址)
 
 ## 粗体/斜体
 这是**粗体**,这是*斜体*
 */
  • 单行注释时,冒号前面不能有空格,后面必须有空格
  • 多行注释时,冒号前面不能有空格,后面不能有内容,必须另起一行

五、标识符

  • 标识符(比如常量名、变量名、函数名)几乎可以使用任何字符
  • 标识符不能以数字开头,不能包含空白字符、制表符(Tab)、箭头(->)等特殊字符

六、数据类型

Swift没有基本数据类型的概念,数据类型分为两大类:

6.1. 值类型(value-type)

  • 枚举(enum)
    • Optional
  • 结构体(struct)
    • Bool、Int、Float、Double、Character
    • String、Array、Dictionary、Set
6.1.1. 整数类型
  • Int8、Int16、Int32、Int64、UInt8、UInt16、UInt32、UInt64
  • 在32bit平台,Int等价于Int32;在64bit平台,Int等价于Int64。一般情况下直接使用Int即可,除非对内存有严格要求。
  • 整数的最值:UInt8.max、Int16.min
6.1.2. 浮点类型
  • Float,32位,精度只有6位
  • Double,64位,精度至少15位
6.1.3. 字面量
  • 布尔类型值在OC中是01,但Swift中是truefalse(和大部分语言一样)
  • 字符串类型值用双引号
  • 字符类型值和字符串一样都是用双引号括起来,但是字符变量必须用Character修饰,否则会默认是字符串
代码语言:javascript复制
/// 布尔
let bool = true

// 字符串
let string = "1024星球"

// 字符
let character: Character = "


	

0 人点赞