swift入门学习笔记
第一个"hello world!"
import Foundation
print("hello world!")
一、数据类型
1.变量类型:
名字 | 类型 | 备注 |
---|---|---|
Int | 整型 | 没有小数部分的数字 |
Float | 单精度浮点数 | 32 位精度 |
Double | 双精度浮点数 | 64 位精度 |
Bool | 布尔 | 值只能为“ture”和“false” |
Character | 字符 | 单一字符 |
String | 字符串 | 一串字符的文本 |
声明方式
//let 声明
//表示常量,声明之后值不能改变
let a = "1"
//var 声明
//表示可以修改变量的值
var b = "2"
可选类型(Optional)
//定义
var name: String? // name 是一个可选的字符串类型,可以是一个字符串值或者 nil
//赋值
var name: String? // 声明一个可选类型变量
name = "Alice" // 给变量赋一个字符串值
name = nil // 将变量赋值为 nil,表示没有值
//强制解包
//在可选类型变量后面加上 ! 来访问其值,如果可选类型的值是 nil,程序会崩溃
var name: String? = "Alice"
print(name!) // 强制解包,输出 "Alice"
//可选绑定
//使用if let
var name: String? = "Alice"
if let unwrappedName = name {
print("Name is \(unwrappedName)") // 如果 name 有值,打印解包后的值
} else {
print("Name is nil") // 如果 name 是 nil,打印提示
}
2.集合类型;
数组(Array)
//简单定义
//let 名字:[类型] = [数据]
var numbers: [Int] = [1, 2, 3, 4, 5]
//自动推导类型
var numbers = [1, 2, 3, 4, 5]
// 推导类型为 [String]
//定义空数组
var emptyArray: [Int] = []
//添加元素
numbers.append(6) //使用 append 方法
numbers += [7, 8] //使用 += 操作符:
//修改元素
// 通过索引修改数组中的元素:
numbers[3] = 10 // 修改第4个元素为 10
//删除元素
numbers.remove(at: 2) // 删除索引为 2 的元素
numbers.removeLast() // 删除数组中的最后一个元素、
//访问元素
let firstElement = numbers[0] // 访问第一个元素
//遍历数组
for number in numbers {
//操作
}
//检查数组是否为空
let isEmpty = numbers.isEmpty
二、基本语法
1.输出(Output)
输出变量及文本
//输出文本
print("Hello, World!")
// 输出变量的值(一个及多个)
let a = 1
let b = "你好"
prinf( a , b )
//文本和变量混合输出
print("我说:", b ,"!" )
//用 \() 将表达式的值嵌入到字符串中
print("我说:\(name)!" )
print("我说:\(name ?? "无名")!" )
换行
//print输出完成后自动换行
print("你")
print("好")
//利用terminator控制不自动换行
print("你", terminator: "")
print("好")
//输出为
//你好
//使用自定义换行符
print("你", terminator: "!")
print("好")
//输出为
//你!好
//使用换行符 \n 手动控制换行
print("你\n好")
2.输入(Input)
使用readline,注意默认输入的是字符串,输入以“回车键结尾”
如果直接回车则返回
//基本用法
//readLine() 返回的值是 String? 类型
let name = readLine()
//使用 Int、Double 等数据类型的初始化器来转换输入的字符串
input = readLine()
let number = Int(input)
三、运算符
1.算术运算符
符号 | 功能 |
---|---|
+ | 加法 |
- | 减法 |
* | 乘法 |
/ | 除法 |
% | 取余 |
2.比较运算符
符号 | 功能 |
---|---|
== | 等于 |
!= | 不等于 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
3.逻辑运算符
符号 | 功能 |
---|---|
&& | 与 |
|| | 或 |
! | 非 |
4.赋值运算符
符号 | 功能 |
---|---|
= | 赋值 |
+= | 加等 |
-= | 减等 |
*= | 乘等 |
/= | 除等 |
%= | 取余等 |
5.条件运算符
condition ? value1 : value2
//如果条件为 true,返回 value1,否则返回 value2。
四、条件语句
1.if语句
let age = 20
if age >= 18 {
print("你已成年")
}
2.if-else语句
let age = 16
if age >= 18 {
print("你已成年")
} else {
print("你未成年")
}
3.if-else if-else语句
let score = 85
if score >= 90 {
print("优秀")
} else if score >= 75 {
print("良好")
} else {
print("及格")
}
4.switch语句
//一般使用方式
let grade = "A"
switch grade {
case "A":
print("优秀")
case "B":
print("良好")
case "C":
print("及格")
default:
print("不及格")
}
//多选择方式
let number = 7
switch number {
case 1...5:
print("在 1 到 5 范围内")
case 6, 7, 8:
print("是 6、7 或 8")
default:
print("不在范围内")
}
5.guard语句
//用法
guard 条件 else {
// 当条件为 false 时执行的代码
return
}
//示例
func checkAge(age: Int) {
guard age >= 18 else {
print("未成年,无法继续")
return
}
print("欢迎光临")
}
checkAge(age: 16) // 输出 "未成年,无法继续"
checkAge(age: 20) // 输出 "欢迎光临"
### 5.guard语句
```swift
//用法
guard 条件 else {
// 当条件为 false 时执行的代码
return
}
//示例
func checkAge(age: Int) {
guard age >= 18 else {
print("未成年,无法继续")
return
}
print("欢迎光临")
}
checkAge(age: 16) // 输出 "未成年,无法继续"
checkAge(age: 20) // 输出 "欢迎光临"