swift注意

时间:2024-11-24 08:37:26

赋值的时候要想为空 可以用   ? 例如

var age1:Int? // ?表示age1的类型为可选类型,其值可以为空
print(age1)

判断一个字符串为空字符串
if str_empty.isEmpty {
    print("str_empty is empty")
}

获取字符串的长度
string1.characters.count

// switch形式使用fallthrough实现贯穿每种可能
case 可以使用(let和var修饰的常量或者变量) where是满足某种条件

enum Direction:Int {
    case east = 0
    case south = 1
    case west = 2
    case north = 3
}
print(Direction.east.rawValue) // rawValue就是找到相对应枚举的原始值

inout 类似于指针 修饰的类型可改变他的值

// 外部参数和内部参数
// first second 是外部参数  在函数调用的时候会显示这两个名称
// one two 是内部参数:在函数内部使用的
// 默认的情况下,第一个外部参数在调用的时候不显示,其余的都显示
func function6(first one:Int, second two:Int) {
    print((one, two))
}

function6(first: 10, second: 2)

结构体中不存在 class (类方法)
struct student9 {
    var name:String?
    static func sayEat() {
        print("eat")
    }
}

子类继承父类的方法重写需要加 override

class Person1 {
    func canEat() {
        print("吃饭")
    }
}

class Man1: Person1 {
    override func canEat() {
        print("不吃饭")
    }
}

let man1:Man1 = Man1()
man1.canEat()

extension 是扩展的意思  不能扩展属性