所以我有这些问题,它无法检测到jtextfield的值。有人可以帮助我吗?
private void ConvertActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
double celsius = Integer.parseInt(cfield.getText());
double fahren = Integer.parseInt(ffield.getText());
if(celsius >= 0){
total = (9/5) * celsius + 32;
ffield.setText("" + total);
}
else if(fahren >= 0){
total = (5/9) * fahren - 32;
ffield.setText("" + total);
}
cfield.setEditable(false);
ffield.setEditable(false);
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
cfield.setText("");
ffield.setText("");
cfield.setEditable(true);
ffield.setEditable(true);
}
成功完成(总时间:5秒)
这是我的代码。
results=cursor.fetchall()
my_list=[]
for result in results:
my_list.append(result[0])
答案 0 :(得分:1)
try {
double celsius = Double.valueOf(cfield.getText());
double fahren = Double.valueOf(ffield.getText());
// do calculations
} catch (NumberFormatException ex) {
// report the error with a logger
// or fix the error
// or escape out
}
答案 1 :(得分:0)
当您尝试将字符串解析为数字时,问题就出在这里。
double celsius = Integer.parseInt(cfield.getText());
double fahren = Integer.parseInt(ffield.getText());
您没有检查文本字段中的文本是否可以解析为数字。因此,当采用空字符串进行解析时,将引发NumberFormatException。您应该使用异常处理来处理这种情况,或者在解析前者是正确选择之前手动检查。
try
{
double celsius = Integer.parseInt(cfield.getText());
double fahren = Integer.parseInt(ffield.getText());
}catch(NumberFormatException e)
{
System.out.println(e.getMessage());
}
始终尝试对可能引发异常的代码使用异常处理。