class calculator {
calculator({this.height, this.weight});
final int height;
final int weight;
double _bmi;
String calculatebmi() {
_bmi = (weight / pow(height / 100, 2));
return _bmi.toStringAsFixed(1);
}
String getresult() {
if (_bmi >= 25) {
return 'Overweight';
} else if (_bmi > 18.5) {
return 'Normal';
} else {
return 'Underweight';
}
return ' ';
}
String getRemarks() {
if (_bmi >= 25) {
return 'Your weight is more than average body weight, try to excercise.';
} else if (_bmi > 18.5) {
return 'Your weight is normal';
} else {
return 'Your weight is less than average body weight, try to eat more';
}
}
}
`GestureDetector(
onTap: () {
calculator cal = calculator(height: height, weight: weight);
Navigator.push(context, MaterialPageRoute(builder: (context) => results(result: calculator().getresult(), bmi: calculator().calculatebmi(), remarks: calculator().getRemarks())));
},)`
发生问题是因为value_bmi为NULL。这是因为您没有调用calculatebmi()。
您正在使用calculator()的空参数计算BMI。所以,与其设置
bmi:calculator().getresult();
用作:
bmi : cal.getresult(); // You already have insteance of calculator (cal)
export class SearchService { ... .map((response) => response.json()) .catch((e) => { if (e.status >== 500) { return cachedVersion(); new Error(`${ e.status
问题内容: 我正在为Android开发Java应用程序,目前遇到了一个问题,调试器正在进入catch块,并且ex为何为null?有人看过这样的东西吗? 问题答案: 这听起来像源代码,并且编译的类不同步,因此调试器正在进入错误的块。 尝试进行清理,然后进行重建。
5.10. Recover捕获异常 通常来说,不应该对panic异常做任何处理,但有时,也许我们可以从异常中恢复,至少我们可以在程序崩溃前,做一些操作。举个例子,当web服务器遇到不可预料的严重问题时,在崩溃前应该将所有的连接关闭;如果不做任何处理,会使得客户端一直处于等待状态。如果web服务器还在开发阶段,服务器甚至可以将异常信息反馈到客户端,帮助调试。 如果在deferred函数中调用了内置函
异常处理器放在 catch 块中。每个catch块以关键字catch开始,接着是括号内包含的类型(表示该块处理的异常类型)和可选参敷名.后面是用花括号括起来的描述异常处理器的代码。捕获异常时,执行 catch 块中的代码。 catch 处理器定义自己的范围。catch在括号中指定要捕获的对象类型。cateh处理器中的参数可以命名也可以无名。如果是命名参数,则可以在处理器中引用这个参数。如果是无名参
我正在查看Java SE7的新功能,目前我正在: http://docs.oracle.com/javase/7/docs/technotes/guides/language/catch-multiple.html 关于捕获多重功能,当我遇到这个语句时: 注意:如果一个捕捉块处理多个异常类型,那么捕捉参数是隐式最终的。在这个例子中,捕捉参数ex是最终的,因此您不能在捕捉块中给它赋值。 我从未注意到