所谓字面量,就是指像特定的数字,字符串或者是布尔值这样,能够直接了当地指出自己的类型并为变量进行赋值的值。比如在下面:

let aNumber =          //整型字面量
let aString = "Hello" //字符串字面量
let aBool = true //布尔值字面量

整型字面量

整型字面量可以是一个十进制,二进制,八进制或十六进制常量。 二进制前缀为 0b,八进制前缀为 0o,十六进制前缀为 0x,十进制没有前缀:

以下为一些整型字面量的实例:

let decimalInteger =            // 17 - 十进制表示
let binaryInteger = 0b10001 // 17 - 二进制表示
let octalInteger = 0o21 // 17 - 八进制表示
let hexadecimalInteger = 0x11 // 17 - 十六进制表示

浮点型字面量

浮点型字面量有整数部分,小数点,小数部分及指数部分。

除非特别指定,浮点型字面量的默认推导类型为 Swift 标准库类型中的 Double,表示64位浮点数。

浮点型字面量默认用十进制表示(无前缀),也可以用十六进制表示(加前缀 0x)。

十进制浮点型字面量由十进制数字串后跟小数部分或指数部分(或两者皆有)组成。十进制小数部分由小数点 .后跟十进制数字串组成。指数部分由大写或小写字母 e 为前缀后跟十进制数字串组成,这串数字表示 e 之前的数量乘以 的几次方。

    例如:1.25e2 表示 1.25 ⨉ ^,也就是 125.0;同样,.25e- 表示 1.25 ⨉ ^-,也就是 0.0125。

十六进制浮点型字面量由前缀 0x 后跟可选的十六进制小数部分以及十六进制指数部分组成。十六进制小数部分由小数点后跟十六进制数字串组成。
指数部分由大写或小写字母 p 为前缀后跟十进制数字串组成,这串数字表示 p 之前的数量乘以 的几次方。
例如:0xFp2 表示 ⨉ ^,也就是 ;同样,0xFp- 表示 ⨉ ^-,也就是 3.75。 负的浮点型字面量由一元运算符减号 - 和浮点型字面量组成,例如 -42.5。

浮点型字面量允许使用下划线 _ 来增强数字的可读性,下划线会被系统忽略,因此不会影响字面量的值。同样地,也可以在数字前加 0,并不会影响字面量的值。

以下为一些浮点型字面量的实例:

let decimalDouble = 12.1875       //十进制浮点型字面量
let exponentDouble = 1.21875e1 //十进制浮点型字面量
let hexadecimalDouble = 0xC.3p0 //十六进制浮点型字面量

字符串型字面量

字符串型字面量由被包在双引号中的一串字符组成,形式如下:

"characters"

字符串型字面量中不能包含未转义的双引号 (")、未转义的反斜线(\)、回车符或换行符。

转义字符 含义
\0 空字符
\\ 反斜线 \
\b 退格(BS) ,将当前位置移到前一列
\f 换页(FF),将当前位置移到下页开头
\n 换行符
\r 回车符
\t 水平制表符
\v 垂直制表符
\' 单引号
\" 双引号
\000 1到3位八进制数所代表的任意字符
\xhh... 1到2位十六进制所代表的任意字符

以下为字符串字面量的简单实例:

import Cocoa

let stringL = "Hello\tWorld\n\n学习:\'http://www.学习.com\'"
print(stringL)

以上程序执行结果为:

Hello    World

学习:'http://www.学习.com'

布尔型字面量

布尔型字面量的默认类型是 Bool。

布尔值字面量有三个值,它们是 Swift 的保留关键字:

  • true 表示真。

  • false 表示假。

  • nil 表示没有值。

Swift 字面量的更多相关文章

  1. Swift开发第七篇——字面量转换&下标

    本篇分为两部分: 一.Swift 中的字面量转换 二.Swift 中的下标 一.Swift 中的字面量转换 所谓字面量就是指像特定的数字,字符串或者是布尔值这样能够直接了当地指出自己的类型并未变量进行 ...

  2. Swift编程语言学习1.4——数值型字面量、数值类型转换

    数值型字面量 整数字面量能够被写作: 一个十进制数,没有前缀 一个二进制数,前缀是0b 一个八进制数,前缀是0o 一个十六进制数,前缀是0x 以下的全部整数字面量的十进制值都是17: let deci ...

  3. Swift语言指南(五)--数字字面量和数字类型转换

    原文:Swift语言指南(五)--数字字面量和数字类型转换 数字字面量 整数字面量写法如下: · 十进制数,无前缀 · 二进制数,以 0b 为前缀 · 八进制数,以 0o 为前缀 · 十六进制数,以 ...

  4. Swift数组字面量

    可以用一个数组字面量来初始化一个数组,简单地把一个或多个值放在一起就可以了.数组字面量的写法是一行用逗号隔开的值,并在行的两端用一对方括号包起来: [value , value , value ] 下 ...

  5. 04_Swift2基础之类型安全和类型推测+字面量+类型别名

    1. 类型安全和类型推测 1> 类型安全 Swift 是一个 _类型安全(type safe)_ 的语言.类型安全的语言可以让你清楚地知道代码要处理的值的类型.如果你的代码需要一个`String ...

  6. JS:关于JS字面量及其容易忽略的12个小问题

    简要 问题1:不能使用typeof判断一个null对象的数据类型 问题2:用双等号判断两个一样的变量,可能返回false 问题3:对于非十进制,如果超出了数值范围,则会报错 问题4:JS浮点数并不精确 ...

  7. Javascript正则构造函数与正则表达字面量&&常用正则表达式

    本文不讨论正则表达式入门,即如何使用正则匹配.讨论的是两种创建正则表达式的优劣和一些细节,最后给出一些常用正则匹配表达式. Javascript中的正则表达式也是对象,我们可以使用两种方法创建正则表达 ...

  8. es6 中增强的对象字面量

    http://www.cnblogs.com/Wayou/p/es6_new_features.html 对象字面量被增强了,写法更加简洁与灵活,同时在定义对象的时候能够做的事情更多了.具体表现在: ...

  9. [译]ES6新特性:八进制和二进制整数字面量

    原文:http://whereswalden.com/2013/08/12/micro-feature-from-es6-now-in-firefox-aurora-and-nightly-binar ...

随机推荐

  1. mongodb备份每一天的数据

    需求:把mongodb里面存储6个月的数据备份到本地,一天天的来备份,方便对备份管理.然后mongo保留一周的数据(优化查询速度,可以用mongo的ttl来实现,但是我的业务场景不太适合用ttl索引) ...

  2. IT基础架构

  3. docker在Windows环境下的安装

    Windows环境下安装 docker有两种安装包 一.Docker for Windows(目前只能在 64 位的 Windows10 专业版.企业版.教育版下才能安装) 二.Docker Tool ...

  4. NLP传统基础(3)---潜在语义分析LSA主题模型---SVD得到降维矩阵

    https://www.jianshu.com/p/9fe0a7004560 一.简单介绍 LSA和传统向量空间模型(vector space model)一样使用向量来表示词(terms)和文档(d ...

  5. bcb ole拖拽功能的实现

    最近项目中用到了OLE 拖拽功能 和BCB 一个Form的Drag 不同的是,只有实现了OLE 拖拽才能,从其他程序拖拽数据到Form 下面的代码实现了,同HTML网页拖拽到Form时,Form获得H ...

  6. Red Hat Enterprise Linux 7.0

    简介 Red Hat Enterprise Linux是Red Hat公司的Linux发行版,面向商业市场,包括大型机.红帽公司从Red Hat Enterprise Linux 5开始对企业版LIN ...

  7. 部署 & virtualen

    安装:apt-get install virtualen virtualenv --no-site-packages venv 加上了参数--no-site-packages,这样,已经安装到系统Py ...

  8. 检测 gcc 是否支持 C99 标准的方法

    一般来说 gcc 3.0 以上都是支持 C99 的 但是编译的时候得加上 -std=c99 检测 gcc 是否支持 C99 方法,新建 c99.c 文件,内容如下 #include <stdio ...

  9. 双向绑定v-bind

    通过v-model绑定输出数据 <script> export default { data() { return { pagestyle:'https://v4.bootcss.com/ ...

  10. Sort a list(tuple,dict)

    FROM:https://www.pythoncentral.io/how-to-sort-python-dictionaries-by-key-or-value/ AND https://www.p ...