如何在iOS中使用try catch?

时间:2015-03-10 04:03:28

标签: ios objective-c

我想使用try catch检查UITextFieldString或数字。 但它似乎不起作用。这是我的代码:

- (IBAction)add {

    @try {
        double firstNumber = self.firstNumber.text.doubleValue;
        double secondNumber = self.secondNumber.text.doubleValue;

        Calculator *calcu = [[Calculator alloc] initWithFirstNumber:firstNumber andSecondNumber:secondNumber andOperation:@"+"];

        self.result.text = calcu.calculateTwoNumber;
    }
    @catch (NSException *exception) {
        self.result.text = @"Please enter right number!";
    }
    @finally {

    }
}

2 个答案:

答案 0 :(得分:4)

ClausBönnhoff在评论中写道的内容怎么强调都不过分:Objective-C 不是 Java或C#。

在Obj-C中使用异常的可接受方法是不可恢复的错误,而不是简单的流控制。

然后,您的问题的答案是应该很少使用例外。在iOS开发的几年中,我没有一次使用它们。我也没有在其他任何人的代码中遇到它们。

但是,我遇到了Obj-C运行时引发的异常,我想这可以说明它们的作用可能是什么。

答案 1 :(得分:4)

关注代码:

    @try {
       self.labelName.text=[arrName ObjectAtIndex:indexPath.row];
    }
    @catch (NSException *exception) {
        NSLog(@"Something missing...");
    }
    @finally {

    }