学习swift从青铜到王者之swift基础部分01
1.1 变量和常量
var 变量名称 = 值(var可以修改)
let 常量名称 = 值(let不可以修改)
1.2 基本数据类型
整数类型和小数类型
两种基本数据类型不可以进行隐式转换
var intVar: Int =
var doubleVar: Double = intVar
1.3 类型转换
var intVar: Int =
let floatValue: Double = 8.8
intVar = Int(floatValue)
print(intVar)--------打印出的值为8
1.4 元组(tuples)
1.1元组(tuples)把多个值组合成一个复合值。元组内的值可以使任意类型,并不要求是相同类型。
let student = ("zhangshan", ) //student 的类型是 (String,Int),值是 ("zhangshan",88)
1.2可以将一个元组的内容分解(decompose)成单独的常量和变量,然后你就可以正常使
let (name , age) = ("zhangshan", )
print("name is \(name)") // 输出 name is zhangshan
print("age is \(age)") // 输出 age is 88
1.3只需要一部分元组值,分解的时候可以把要忽略的部分用下划线(_)标记:
let (name , _) = ("zhangshan", )
print("name is \(name)") // 输出 name is zhangshan
1.4可以通过下标来访问元组中的单个元素,下标从零开始:
let student = ("zhangshan", )
print("name is \(student.0)") // 输出 name is zhangshan
print("age is \(student.1)") // 输出 age is 88
1.5可以定义元组的时候给单个元素命名
let student = (name: "zhangshan", age:)
print("name is \(student.name)") // 输出 name is zhangshan
print("age is \(student.age)") // 输出 age is 88
1.5 可选值 (optional)和隐式解析可选
单独讲解这块http://www.cnblogs.com/jiackyan/p/7986052.html
学习swift从青铜到王者之swift基础部分01的更多相关文章
- 学习swift从青铜到王者之swift属性09
1.结构体常量和类常量的存储属性 let p1 = Person1() //p1.age = 88 不允许修改 //p11.name = "yhx1" 不允许修改 var p11 ...
- 学习swift从青铜到王者之swift闭包06
语法表达式 一般形式:{ (parameters) -> returnType in statements } 这里的参数(parameters),可以是in-out(输入输出参数),但不能设定 ...
- 学习swift从青铜到王者之swift结构体和类08
定义 // 定义类 class StudentC{ } // 定义结构体 struct StudentS{ } 定义存储属性 // 定义类 class StudentC{ var name:Strin ...
- 学习swift从青铜到王者之swift枚举07
空枚举 //空枚举 enum SomeEnumeration { // enumeration definition goes here } 枚举基本类型 //枚举基本类型 enum CompassP ...
- 学习swift从青铜到王者之Swift语言函数05
1.定义一个函数以及调用 //一,定义一个无参无返回值函数 func fun1(){ print("this is first function") } fun1() 2.定义一个 ...
- 学习swift从青铜到王者之Swift控制语句04
1 if语句基本用法 if boolean_expression { /* 如果布尔表达式为真将执行的语句 */ } 如果布尔表达式为 true,则 if 语句内的代码块将被执行.如果布尔表达式为 f ...
- 学习swift从青铜到王者之Swift集合数据类型03
1 数组的定义 var array1 = [,,,] var array2: Array = [,,,] var array3: Array<Int> = [,,,] var array4 ...
- 学习swift从青铜到王者之字符串和运算符02
1 字符和字符串初步 var c :Character = "a" 2 构造字符串 let str1 = "hello" let str2 = " ...
- 学习Android从青铜到王者之第一天
1.Android四层架构 一.Linux Kernel 二.Libraries和Android Runtime 三.Application Framework 四.Applications 一.Li ...
随机推荐
- qt5.8 链接mysql错误:driver not load
转载请注明出处:http://www.cnblogs.com/dachen408/p/7155858.html 问题:qt5.8 链接mysql错误:driver not load. 解决方案:1.安 ...
- .net+EF+mvc通过EasyUI的DataGrid实现增删改查
@{ Layout = null;} <!DOCTYPE html> <html><head> <meta name="viewport ...
- 第2节 hive基本操作:12、hive当中的hql语法
3.2. hive查询语法 3.2.1.SELECT https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Select 基本 ...
- pycharm connect to github
这位同学写得非常详细,推荐 http://www.cnblogs.com/feixuelove1009/p/5955332.html#undefined
- Java中数组在内存中的图解
Java中的数组在内存中的图解,其实对于数组,还是比较熟悉的,平时用的也是很多的,在看数据结构与算法的极客时间专栏,最常用的10个数据结构:数组.链表.栈.队列.散列表.二叉树.堆.跳表.图.Trie ...
- seq2seq(1)- EncoderDecoder架构
零 seq2seq是从序列到序列的学习过程,最重要的是输入序列和输出序列是可变长的,这种方式就非常灵活了,典型的机器翻译就是这样一个过程. 一 最基本的seq2seq网络架构如下所示: 可以看到,en ...
- 神经网络(NN)+反向传播算法(Backpropagation/BP)+交叉熵+softmax原理分析
神经网络如何利用反向传播算法进行参数更新,加入交叉熵和softmax又会如何变化? 其中的数学原理分析:请点击这里.
- CentOS7 export命令
一.windows下的环境变量 在windows系统下,很多软件安装都需要配置环境变量,比如安装jdk,假如你没有配置环境变量,那么在非软件安装的目录下使用javac命令,系统将会报这不是系统内部命令 ...
- MySQL 日志初探
目录 MySQL 日志初探 零.概述 一.Error Log(错误日志) 二.General Query Log(通用查询日志) 三.Slow Query Log (慢查询日志) 四.Binary L ...
- Linux下启动tomcat报java.lang.OutOfMemoryError: PermGen space
一.错误信息 java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke ...