放入文本框时,使csv文件中的数据加倍

时间:2017-04-01 08:30:18

标签: java

txtRate.setText(emp.getRate());

我无法在文本框中显示csv文件中的数据,因为它一直在说

double无法转换为java.lang.String。 我的方法是public Double getRate() 如果我尝试使用公共字符串它会工作,但我不能使用该值进行计算,因为它已经设置 字符串

2 个答案:

答案 0 :(得分:1)

您正在处理的类包含带有签名setText(String value)的方法,但没有签名setText(Double value)的方法。

当你调用方法时,编译器会检查参数类型并尝试识别这种情况下应该使用的方法。

当您使用Double类型作为参数时,编译器无法找到带有签名setText(Double value)的方法,并且您会收到您在问题中报告的错误。

要解决此问题,请将参数从Double转换为String类型,然后再将其传递给setText方法。

txtRate.setText(String.valueOf(emp.getRate()));

txtRate.setText(emp.getRate().toString());

但如果NullPointerException返回null,则第二种方法可能会抛出emp.getRate(),因此第一种方法更安全。

如果您想以奇特的方式格式化数字,请考虑本教程:https://docs.oracle.com/javase/tutorial/java/data/numberformat.html

答案 1 :(得分:0)

在文本框上显示数据需要将变量设置为字符串,但计算需要变量是显示转换为字符串时的答案的两倍,并且当计算不是