swift基础识点

数组的初始化:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// 初始化为一个 5 个空间长度全部为 0 的数组
var arr = Array(count:5, repeatedValue:0)

// 快速创建空数组 按照2的倍数来分配
var arr1 = [Int]()
arr1.capacity // 0
arr1.append(10)
arr1.capacity // 2
arr1.append(10)
arr1.capacity // 2
arr1.append(10)
arr1.capacity // 4
arr1.append(10)
arr1.capacity // 4
arr1.append(10)
arr1.capacity // 8
arr1.append(10) // ...

字典的小 tips

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// 初始化空字典
let dict1 = [String : Int]()

// 定义有值得字典 类型:[String : NSObject]
var dict2 = ["name" : "lnj", "age" : 31, "score" : 59.5]

// 遍历
for (key, value) in dict2
{
print(key)
print(value)
}

// 合并
var dict3 = ["name" : "lnj", "age" : 31]
var dict4 = ["rank" : 1, "score" : 99.9]

for (key, value) in dict4 {
dict3[key] = value
}

dict3

字符串

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/* OC 字符串以\0结尾,swift 不是 */

// 拼接
var str1 = "xmg"
var str2 = "nx"
str1 += str2
str1

// 插值
let name = "lnj"
let age = 31
let result = "name = \(name), age = \(age)"

// 格式化
for i in 0...5
{
let name = String(format: "%02.png", arguments: [i])
print(name)
}

// 截取
let str3 = "com.520it.xmg"
// 截取xmg
// 注意:Swift 中截取字符串的方法,接受的参数和 OC 中不一样
// 前期,为了大家开发方便,建议转换为 NSString 之后再截取
let result2 = str3.substringFromIndex(str3.endIndex.advancedBy(-3))
let result3 = str3.substringFromIndex(str3.startIndex.advancedBy(10))

// Swift 字符串
// .startIndex 用于获取字符串中第一个字符的位置
// .endIndex,用于获取字符串中最后一个字符串`下一位`的位置

函数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
func sum(i: Int, j: Int) {
print(i + j)
}

func sum1(first i: Int, second j: Int)
{
print(i + j)
}

// 外部参数 first second 内部参数 i j
sum1(first: 10, second: 20)

// 默认参数
func sum2(i: Int, j:Int = 10) {
print(i + j)
}

sum2(10)
sum2(10, j: 20)

// 注意:开发中不推荐将默认参数写在前面
func sum3(i: Int = 20, j: Int) {
// 不推荐!
}

// 函数参数默认是常量,函数内部不能修改,如果想在函数中修改参数,需要在参数前加上 var

let num1 = 10
let num2 = 20

func swap1(var value1: Int, var value2: Int){
let temp = value1
value1 = value2
value2 = temp
}

swap1(num1, value2: num2)

print(num1, num2)

// 可变参数 在参数后面加... 就可以接受0个或者多个值
// 可变参数函数,参数是其实就是个数组,装着所有参数
// 和默认值一样,变参函数最好写在后面
// 既有默认值,又有可变参数,将可变参数放到最后
// 一个函数中只能有一个可变参数
func sum4(numbers: NSObject...)
{
print(numbers)
}

sum4(1, 2, 3.1)
文章作者: Ammar
文章链接: http://lizhaoloveit.cn/2016/05/09/Swift%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86%E7%82%B9/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Ammar's Blog
打赏
  • 微信
  • 支付宝

评论