java - 从 jformatted 文本字段中获取浮点值

标签 java swing types jformattedtextfield

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

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

并使用 :

获取值
double stop=(Double)stopAppFormattedTextField.getValue();

但上面的语句抛出以下异常:

"Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Double"

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

最佳答案

您从格式化程序中得到了 Long,但是您想要 double。你可以这样做:

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

关于java - 从 jformatted 文本字段中获取浮点值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3759424/

相关文章:

Java/Mockito - 线程在重试之前以指数方式 hibernate 的单元测试

java - 如何在 SolrJ 中插入具有多个子 Bean 的 Bean 对象

java - Jtable 值复制最后一个值

java - 使用数组的石材剪程序 Joption

java - 什么类型的变量最适合这项任务?

java - JSON 数组到 ArrayList<List<String>>

java - 为什么 1.7 以下的源代码不允许使用 <> 运算符?

c++ - 在泛型类中实现特定方法

java - JComboBox如何显示项目的右端?

java - 声明扩展 2 个不同接口(interface)的类型属性