警告:值已定义但从未使用过;考虑用布尔测试替换
Posted
技术标签:
【中文标题】警告:值已定义但从未使用过;考虑用布尔测试替换【英文标题】:Warning: Value was defined but never used; consider replacing with a boolean test 【发布时间】:2016-08-21 01:58:30 【问题描述】:我的函数收到以下警告:
值 intVal 已定义但从未使用过;考虑用布尔测试替换。
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool
text = (timerTxtFld.text! as NSString).stringByReplacingCharactersInRange(range, withString: string)
if let intVal = Int(text)
timerDoneBtn.alpha = 1
timerDoneBtn.enabled = true
else
timerDoneBtn.enabled = false
return true
谁能帮我弄清楚我需要做些什么来摆脱这个错误?
【问题讨论】:
这是一个警告,而不是一个错误......它只是说你创建的值(intVal)没有被使用。您可以用 _ 替换它,它会使警告静音 【参考方案1】:去掉let,直接对比Int
的结果。你无缘无故地创建了intVal
,它抱怨说这是一个未使用的变量。
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool
text = (timerTxtFld.text! as NSString).stringByReplacingCharactersInRange(range, withString: string)
if Int(text) != nil
timerDoneBtn.alpha = 1
timerDoneBtn.enabled = true
else
timerDoneBtn.enabled = false
return true
【讨论】:
if Int(text)
不会编译
哎呀忘记值了。【参考方案2】:
这不是错误,而是警告。编译器告诉您,您创建了 const intVal 但从未使用过它。
只需将您的 if 语句更改为
if Int(text) != nil
【讨论】:
以上是关于警告:值已定义但从未使用过;考虑用布尔测试替换的主要内容,如果未能解决你的问题,请参考以下文章
ESLint 警告;已定义但从未用于 react-native 组件 [重复]
Scala 2.12.2 发出大量无用的“警告:参数值...在方法中...从未使用过”警告。如何摆脱它们?