【发布时间】:2015-03-10 04:03:28
【问题描述】:
我想使用 try catch 检查 UITextField 是 String 或数字。
但它似乎不起作用。这是我的代码:
- (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 {
}
}
【问题讨论】:
-
嗯,我认为问题在于您的
@try中没有任何内容引发异常...... -
不要将
try/catch用于此类任务。这不是适合这项工作的工具。 -
你认为什么会引发异常?在实际上没有数字的字符串上调用
doubleValue只会返回 0,如文档中所述。 -
try-catch 应该只用于检查异常。如果要验证字段,请实现自己的方法来检查文本是否满足您的要求。
-
iOS 不是 Java。异常是他们所谓的“异常”而不是错误处理程序
标签: ios objective-c