Swift中怎么使用do-try-catch结构

2024-05-07

Swift中,可以使用do-try-catch结构来处理可能抛出错误的代码块。下面是一个示例:

func divide(a: Int, b: Int) {
    do {
        let result = try divideFunction(dividend: a, divisor: b)
        print("Result: \(result)")
    } catch {
        print("Error: \(error)")
    }
}

func divideFunction(dividend: Int, divisor: Int) throws -> Int {
    guard divisor != 0 else {
        throw DivisionError.divideByZero
    }
    
    return dividend / divisor
}

enum DivisionError: Error {
    case divideByZero
}

在上面的例子中,divide(a:b:)函数调用了divideFunction(dividend:divisor:)函数,并使用了try关键字来尝试执行可能抛出错误的代码。如果divideFunction(dividend:divisor:)函数抛出了错误,catch块会捕获并处理错误。