例如:
double y = rs.getDouble ("a");
double z = rs.getDouble ("b");
double q = rs.getDouble ("c");
TextField2.setText (String.valueOf ((q * y) + z));
但如果我拿数据,那么结果是这样的: 3000.0是一个字符串而不是一个双。
答案 0 :(得分:2)
如何以双重形式显示JTextField,而不是以字符串
的形式显示
使用正确的JComponent
JFormattedTextField使用数字格式化程序
JSpinner与Number Formatter和SpinnerNumberModel
答案 1 :(得分:1)
使用JFormattedTextField
NumberFormat amountFormat = NumberFormat.getNumberInstance();
amountFormat.setMinimumFractionDigits(2);
amountFormat.setMaximumFractionDigits(2);
JFormattedTextField textfield1 = new JFormattedTextField(amountFormat);
而不是setText()
,你会使用setValue(Object value)
,所以你会做
double value = q * y + z; // no need for paranthesis - order of operation
textfield2.setValue(new Double(value));
请参阅JFormattedTextField docs | Tuorial | NumberFormat
注意,如果您想要货币转换,可以使用。 NumberFormat.getCurrencyInstance()