博客
关于我
Swift常用语法规则(一)
阅读量:638 次
发布时间:2019-03-14

本文共 2342 字,大约阅读时间需要 7 分钟。

常量和变量

在Swift中,常量和变量是编程中的基础概念。常量通过let声明,不可修改,而变量通过var声明,可修改。以下是常量和变量的基本使用示例:

// 常量的定义let a : Int = 10// 变量的定义var b : Int = 20// 修改变量值b = 30

注意事项

  • 常量的不可修改性:仅仅意味着不能再次声明为常量或变量指向新的对象,但可以通过遍历或访问其属性。
  • 枚举类型的使用
    let btn : UIButton = UIButton(type: .Custom)btn.backgroundColor = UIColor.blueColor()btn.setTitle("按钮", for: .Normal)btn.frame = CGRect(x: 20, y: 20, width: 60, height: 30)view1.addSubview(btn)

数据类型

在Swift中,数据类型是程序中数据操作的基础。可以通过类型推导或显式注明。

类型推导

var i = 20 // i 为 Intvar j = 3.33 // j 为 Double// 变量赋值如下会导致错误// i = 30.5// 正确写法var j = 3.33j = 6.66

基本运算

let m : Int = 10let n : Double = 3.14let a = 10let b = 3.14let c = Double(a) + blet d = a + Int(b)

逻辑分支

If分支语句

let score = 87if score < 60 {    print("不及格")} else if score < 70 {    print("及格")} else if score < 80 {    print("良好")} else if score < 90 {    print("优秀")} else {    print("完美")}

三目运算符

var a = 10var b = 50var result = a > b ? a : bprintln(result)

Guard的使用

func online(age: Int) {    guard age >= 18 else {        print("回家去")        return    }    print("可以上网")}online(18)

Switch分支

let m = 5let n = 10var result = 0let operation = "+"switch operation {case "+":    result = m + ncase "-":    result = m - ncase "*":    result = m * ncase "/":    result = m / ndefault:    result = 0}print(result)

循环

For循环

for i in 0..<10 {    print(i)}for i in 0...10 {    print(i)}for _ in 0..<10 {    print("hello")}

While和Do While循环

var a = 0while a < 10 {    a += 1}let b = 0repeat {    print(b)    b += 1} while b < 20

字符串

遍历字符串

let str = "Hello, Swift"for c in str.characters {    print(c)}

字符串拼接

let str1 = "Hello"let str2 = "World"let str3 = str1 + str2let name = "why"let age = 18let info = "my name is \(name), age is \(age)"let time = String(format: "%02d:%02d", min: 3, second: 4)

字符串截取

let myStr = "www.520it.com"var subStr = String(myStr[myStr.index(myStr.startIndex, offsetBy: 4)]var subStr2 = String(myStr[..

数组

数组的初始化

var array : [String] = []let array2 : [NSObject] = ["why", 18]

数组操作

array.append("yz")// 删除元素array.removeFirst()

数组遍历

for i in 0..

字典

字典的初始化

var dict1 : [String: NSObject] = [:]let dict2 = ["name" : "why", "age" : 18]dict = ["name" : "why", "age" : 18]

字典操作

dict["age"] = 20dict.removeValue(forKey: "age")

字典遍历

for value in dict.values {    print(value)}

元组

元组的定义

let tuple = (1001, "张三", 30, 90)

元组的使用

let error = (404, "Not Found")print(error.0)print(error.1)

转载地址:http://cqroz.baihongyu.com/

你可能感兴趣的文章
Qt笔记——官方文档全局定义(二)Functions函数
查看>>
POJ 3468 A Simple Problem with Integers
查看>>
poj 3468 A Simple Problem with Integers 降维线段树
查看>>
poj 3468 A Simple Problem with Integers(线段树 插线问线)
查看>>
poj 3485 区间选点
查看>>
poj 3518 Prime Gap
查看>>
poj 3539 Elevator——同余类bfs
查看>>
Qt笔记——官方文档全局定义(三)Macros宏
查看>>
poj 3628 Bookshelf 2
查看>>
Qt笔记——官方文档全局定义(一)Types数据类型
查看>>
POJ 3670 DP LIS?
查看>>
POJ 3683 Priest John's Busiest Day (算竞进阶习题)
查看>>
POJ 3988 Selecting courses
查看>>
POJ 4020 NEERC John's inversion 贪心+归并求逆序对
查看>>
poj 4044 Score Sequence(暴力)
查看>>
POJ 基础数据结构
查看>>
POJ 题目3020 Antenna Placement(二分图)
查看>>
Poj(1797) Dijkstra对松弛条件的变形
查看>>
SpringBoot为什么不需要xml配置文件?
查看>>
POJ--2391--Ombrophobic Bovines【分割点+Floyd+Dinic优化+二分法答案】最大网络流量
查看>>