【SWIFT】从零开始的SWIFT语言学习笔记-2:简单值、数组与字典
1.0.3 简单值、数组与字典
知识点:
使用var创建变量
var myVariable = 65
myVariable = myVariable + 1
使用let创建常量
let myConstant = 67
在创建变量或常量的时候不需要特别指出其类型,编译器会自动推断。
如果一开始不确定,则可以使用冒号指定类型。
let myConstant0 = 1
let myConstant1:Double = 2.71
var myVariable0 = 3
var myVariable1:Float=3.14
Swift不会隐式转换格式,我们需要在使用的时候准确转换好值的类型。
我们需要显式创建所需类型的实例。
let label = "My label"
let num = 1
let labelName = label + (String)(num)
字符串中包含值有一种简单的方法,使用\()取代复杂的写法。
该运算符也可以包含运算。
let apples = 3
let oranges = 5
let appleSum = "I have " + String(apples) + " apples"
let orangeSum = "I have \(oranges) oranges"
let allSum = "I have \(oranges + apples) things"
对占用多行的文本使用“”“。当“”“匹配时,就可以取消开头的缩进。
let longString = """
我:你好,我有\(apples)个苹果
她:你好,我有\(oranges)个橙子
结束对话
"""
使用[]创建数组和字典,在方括号输入索引访问其元素。最后一个元素后面允许有逗号。
索引从0开始。
var shoppingList = ["pen","apple","water",]
var firstItem = shoppingList[0]
var peopleList = [
"peter":"Teacher",
"sam":"Student",
]
增加数组或字典长度
peopleList["Jason"] = "Chef"
shoppingList.append("hat")
print(peopleList)
print(shoppingList)
如果要创建空数组或字典,使用初始化语法
var emptyArray:[String]=[]
var emptyDictionary:[String:Float]=[:]
如果已确认数组类型,就使用[]清空数组,[:]清空字典,如下:
emptyArray = []
emptyDictionary = [:]
练习题
1.创建一个具有Float显式类型且的值为4的常量.
Create a constant with an explicit type of Float and a value of 4.
2.若 let widthLabel = label + String(width) 代码中的的强制转换删除会出现什么错误?
Try removing the conversion to String from the last line. What error do you get?
3.使用\()语法构建一段文本,要求包含浮点数计算和某人姓名。
Use \() to include a floating-point calculation in a string and to include someone’s name in a greeting.
下一章,我们学习Control Flow控制流,if switch等等语句的使用
【SWIFT】从零开始的SWIFT语言学习笔记-2:简单值、数组与字典的更多相关文章
- Go语言学习笔记(三)数组 & 切片 & map
加 Golang学习 QQ群共同学习进步成家立业工作 ^-^ 群号:96933959 数组 Arrays 数组是同一种数据类型的固定长度的序列. 数组是值类型,因此改变副本的值,不会改变本身的值: 当 ...
- R语言学习笔记:矩阵与数组(array)
元素可以保存在多个维度的对象中,数组存储的是多维数据元素,矩阵的是数组的特殊情况,它具有两维. 创建数组的几种方法. 1. > m<-c(45,23,66,77,33,44,56,12,7 ...
- C语言学习笔记 (006) - 二维数组传参的三种表现形式
# include <stdio.h> # include <stdlib.h> # define M # define N int getdate(int (*sp)[M]) ...
- C语言学习笔记 (005) - 二维数组作为函数参数传递剖析
前言 很多文章不外乎告诉你下面这几种标准的形式,你如果按照它们来用,准没错: //对于一个2行13列int元素的二维数组 //函数f的形参形式 f(int daytab[2][13]) {...} / ...
- C语言学习笔记(五) 数组
数组 数组的出现就是为了解决大量同类型数据的存储和使用的问题: 数组的分类:一维数组.二维数组. 一维数组:为多个变量连续分配存储控件:所有的变量的数据类型必须相同:所有变量所占的字节大小必须相等: ...
- c语言学习笔记(7)——数组
一.为什么需要数组1.为了解决大量同类型的数据存储和使用2.为了模拟现实世界二.数组的分类1.一维数组为n个变量连续分配存储空间所有的变量数据类型必须相同所有变量所占的字节大小必须相等初始化:完全初始 ...
- Python学习笔记3-Python元组、数组、字典集合的操作
在Python中数组中的每一项可以是不同的数据类型 元组:只能读不能写的数组 aTuple=(1,'abc','tmc',79.0,False) print aTuple[1:3] print typ ...
- HTML语言学习笔记(会更新)
# HTML语言学习笔记(会更新) 一个html文件是由一系列的元素和标签组成的. 标签: 1.<html></html> 表示该文件为超文本标记语言(HTML)编写的.成对出 ...
- 2017-04-21周C语言学习笔记
C语言学习笔记:... --------------------------------- C语言学习笔记:学习程度的高低取决于.自学能力的高低.有的时候生活就是这样的.聪明的人有时候需要.用笨的方法 ...
- 2017-05-4-C语言学习笔记
C语言学习笔记... ------------------------------------ Hello C语言:什么是程序:程序是指:完成某件事的既定方式和过程.计算机中的程序是指:为了让计算机执 ...
随机推荐
- Ubuntu安装python固定版本
一. 安装python3.7 本篇文章使用python3.7安装步骤为例 1.直接使用apt-get安装python3.7 apt-get install python3.7 该方法经常会出现unab ...
- 关于vue cli 使用iview 自定义主题遇到的坑
定制主题,这里讲变量覆盖 当你老老实实的把上面文档中的代码一一复制粘贴到项目文件中时,发现了还没装less,所以你就 npm install less –savenpm install less-lo ...
- Vue搭建后台系统需要做的几点(持续更新中)
前言 持续更新 一.UI框架 推荐 Elemnet ui 二.图表 vue-schart npm install vue-schart -S <template> <div id=& ...
- 一文看完vue3的变化之处
在通读了vue的官网文档后,我记录下了如下这些相对于2.x的变化之处. 1.创建应用实例的变化 之前一般是这样: let app = new Vue({ // ...一些选项 template: '' ...
- 【小程序自动化Minium】二、元素定位-Page接口中的 get_element() 与 get_elements()
UI自动化中的重要工作就是元素定位了,高效精准的定位方法可以让工作事半功倍. 在过去的一段web自动化经历中,使用的selenium库支持了多种定位方法,我们可以利用这些定位方法来做进一步封装,写出符 ...
- RapidEye快鸟、SPOT卫星遥感影像数据
目前地理遥感生态网平台已发布高分辨率卫星遥感影像数据. 数据样例:百度云下载链接:https://pan.baidu.com/s/17ofPwpDM3OCHnE-LuhvUp 提取码:i0m4 ...
- Iterator接口介绍和迭代器的代码实现
定义:Iterator接口是Java集合框架中的一员. 作用:Collection接口与Map接口主要用于存储元素. 常用方法: boolen hasNext(); //判断游标右边是否还有元 ...
- 编译kubeadm使生成证书有效期为100年
目录 问题 编译 检查结果 问题 当我使用kubeadm部署成功k8s集群时在想默认生成的证书有效期是多久,如下所示 /etc/kubernetes/pki/apiserver.crt #1年有效期 ...
- kubernetes调度概念与工作流程
Overview [1] kubernetes集群中的调度程序 kube-scheduler 会 watch 未分配节点的新创建的Pod,并未该Pod找到可运行的最佳(特定)节点.那么这些动作或者说这 ...
- CF1381B Unmerge(位运算的作用)
题目大意: 给定长度为 \(2n\) 的排列 \(p\) .确定是否存在两个数组 \(a\) 和 \(b\) ,每个数组的长度都为 \(n\) ,并且没有相等的元素,使得 \(p = \operato ...