我写了一个方法,通过点击一个切换按钮将高度从厘米转换为英尺英寸,但是当我在输入高度(厘米)后尝试单击切换按钮时,它会抛出我的错误 java.lang.NumberFormatException:无效的int:“” 这是我的代码:
private void convertTofeetInches(EditText height_cm){
String str = height_cm.getText().toString();
int feet = (int) Math.floor(Integer.parseInt(str)/30.48);
int inches = (int)Math.round((Double.parseDouble(str)/2.54) - ((int)feet * 12));
Log.d("feet",String.valueOf(feet));
Log.d("inches",String.valueOf(inches));
enter_height.setText(""+feet + "'" +inches + "\"");
}
我认为我在类型转换方面犯了一些错误。任何人都可以指出它。
答案 0 :(得分:2)
试试这个,
private void convertTofeetInches(String str) throws NumberFormatException{
Double value = new Double(str);
int feet = (int) Math.floor(value / 30.48);
int inches = (int) Math.round((value / 2.54) - ((int) feet * 12));
String ouput = feet + "' " + inches + "\"";
enter_height.setText(ouput);
}