从格式化文本字段中获取浮点值

时间:2010-09-21 10:32:45

标签: java swing types jformattedtextfield

我能够创建只接受浮点值的JFormatted TextField,但我无法获取该值.... 我宣布它..

stopAppFormattedTextField = new javax.swing.JFormattedTextField(new DecimalFormat("#.00"));

并使用以下方式获取值:

double stop=(Double)stopAppFormattedTextField.getValue();

但上述声明引发了以下异常:

  

“线程中的异常   “AWT-EventQueue的-0”   java.lang.ClassCastException:   java.lang.Long无法强制转换为   java.lang.Double中“

我该怎么做才能获取浮点值? - 提前谢谢

2 个答案:

答案 0 :(得分:4)

您从格式化程序中获得了Long,但您需要double s。你可以这样做:

Number number = (Number)stopAppFormattedTextField.getValue();
double stop = number.doubleValue();

答案 1 :(得分:4)

初始化后将其添加到您的代码中:

stopAppFormattedTextField.setValue(0d);

getValue将自动返回双重