我能够创建只接受浮点值的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中“
我该怎么做才能获取浮点值? - 提前谢谢
答案 0 :(得分:4)
您从格式化程序中获得了Long
,但您需要double
s。你可以这样做:
Number number = (Number)stopAppFormattedTextField.getValue();
double stop = number.doubleValue();
答案 1 :(得分:4)
初始化后将其添加到您的代码中:
stopAppFormattedTextField.setValue(0d);
getValue将自动返回双重