swift基础05

1.swift基本数据结构

swift语言类型是很强的。

数组:

var p3 = ["iOS", "Android", "WP", "SB"]  // 初始化数组
p3[0] = "ios"   // 数组取元素
p3.append("BlackBerry")  // 数组添加元素

也可以这样写:
var dataArr = NSMutableArray()

字典:

var p4 = [
        "name":"欧阳",
        "Age":"35",
        "Score":"100",
    ]  // 字典是 [] 前面是key,后面是value。注意:我们在js或者php语言中,创建数组或者字典,最后item后面没有逗号,swift中可以有。
    
    for (key, value) in p4 {
        
        print("key = \(key), value = \(value)")
    }
p4["Course"] = "iOS"  // 字典追加元素

2.setter and getter

var center: Point {

    get {
        let x = origin.x + (size.width / 2)
        let y = origin.y + (size.height / 2)
        return Point(x:x, y:y)
    }
    
    set(newCenter) {
        origin.x = newCenter.x - size.width / 2
        origin.y = newCenter.y - size.height / 2
    }
}

3.协议Protocal

swift中不建议有可选协议,都应该实现。
如果要加可选协议:

// 定义一个协议 协议也有基协议  协议是可以多继承的
@objc protocol SortProtocal: NSObjectProtocol {
    // 协议方法必须实现
    func compare(value: Int) -> Bool
    // 定义一个可选的协议
    @objc optional func beginCompare() -> Bool
}

协议强转:classA as SortProtocal

4.swift 双问号(??)的使用

用法:newValue = optionalValue ?? value

optionalValuenil时,newValue的值为optionalValue的值,若optionalValuenil时,newValue的值为value的值

4.bejson.com就如json.cn一样可以格式化json数据

你可能感兴趣的:(swift基础05)