swift语法

框架

Foundation框架: 提供了⼀些基本功能,如⽇期和时间管理、字符串、集合类、⽂件管理、⽹络等
UIKit框架: UIKit是iOS的⽤户界⾯框架。UIKit中导⼊了
Foundation框架
框架在使用前要导入import Foundation

常量与变量

声明常量和变量

使用let来声明常量,使用var来声明变量,可以在一行中声明多个常量或变量,用逗号隔开

let a = 10
var b = 0, c = 1

常量和变量的命名

常量和变量的命名不能包含数学符号,箭头,保留的Unicode码位,连线与制表符,也不能以数字开头

基本数据类型

Int整型,Double和Float浮点型,Bool布尔值,String文本型数据(基于unicode),Array数组,Dictionary字典
不进行隐式类型转换
不提供++和–
强制计算不检查溢出可以在运算符前加&
字符类型当作String处理

类型标注

可以在声明常量或变量的时候加上类型标注,说明常量或变量中要存储的值的类型。如果要添加类型标注,需要在常量或变量名或面加上一个冒号和空格,然后加上类型名称
可以在一行中定义多个同样类型的变量,用逗号分隔,并在最后一个变量名之后添加类型标注

var message: String
var red, green, blue: Double

标准输入输出

print(c)
readLine()



注释

Swift中的注释与C语言相同,使用//进行单行注释/**/进行多行注释


分号

如果要在同一行内写多条独立的语句,需要用分号分隔


元组

元组tuples把多个值组合成一个复合值,元组内的值可以是任意类型,不要求是相同类型

let http404Rrror = (404, "Not Found")

可以将一个元组的内容分解成单独的常量和变量,可以把要忽略的部分用下划线_标记

let (statusCode, statusMessage) = http404Error
let (statusCode, _) = http404Error

可以通过下标来访问元组中的单个元素,下标从零开始

print("The status code is \(http404Error.0)")

可以在元组定义时给单个元素命名,给元组中的元素命名后,可以通过名字来获取这些元素的值

let http200Status = (statusCode:200, description:"OK")
print("The status code is \(http404Error.statusCode)")



区间

…(全闭合) …<(半闭合)


字符串

let multiplier = 3
let message = "\(multiplier) times 2.5 is \(Double(multiplier) * 2.5)"



字符

Swift 的字符是一个单一的字符字符串字面量,数据类型为 Character

let char: Character = "A"

如果在 Character(字符) 类型的常量中存储更多的字符,则程序执行会报错
Swift 中不能创建空的 Character(字符) 类型变量或常量


数组

var shoppingList = [“Eggs”, “Milk”]
其他属性和方法:


集合

未定义顺序


字典

哈希表(key, value)


循环语句

for i in (1...number).reversed(){//reserve()逆序

}

for i in stride(from:1,to:number,by:1){//<number

}

for i in stride(from:0.5,through:15.25,by:0.3){//<=through

}

while condition {
	
}



条件语句

if condition {

}else{
	
}

switch-case语句默认break



函数和闭包

函数

func multiply(operand: Int, by: Int) -> Int {//返回值是Int类型
	return operand * by
}
multiply(operand: 5, by: 6)

//swift函数的参数可以分为内部名称和外部名称
func multiply(_ operand: Int, by otherOperand: Int) -> Int {//可使用_省略外部参数
	return operand * otherOperand
}
multiply(5, by:6)

var operation: (Int, Int) -> Int//(Int, Int) -> Int是一种函数类型
operation = mutiply
let result = operation(3, 4)//result = 12



闭包



自定义类型

struct and class

struct是值传递,class是引用传递
struct成员变量可以不初始化,class成员变量必须初始化
struct不支持继承,class支持继承,只能单继承


枚举Enumerations



协议Protocol



数据类型

Generics泛型

struct Array<Element> {
	...
	func append(_ element:Element){...}
}
var a = Array<Int>()
a.append(5)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值