程序不允许十进制输出

时间:2016-03-04 16:56:07

标签: java user-interface

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        int num = (Integer)this.jSpinner1.getValue();
        int d = (Integer)this.jSpinner2.getValue();
        int val = (num / d);
        jTextField1.setText(String.valueOf(val));
    }                                        

    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    int num = (Integer)this.jSpinner1.getValue();

    int d = (Integer)this.jSpinner2.getValue();

    int val1 = (int) ((double)num / (double)d);
    jTextField2.setText(String.valueOf(val1));
    }

我正在创建一个程序,它使用分子和分母使用按钮来显示整数和双精度值。该程序有效,但不显示小数。它通常是最接近的整数。基本上我需要的是帮助在输出中显示小数。 http://imgur.com/WdnxgrH

1 个答案:

答案 0 :(得分:4)

您明确声明输出变量为int

返回double值,或者为了更好的精度,返回BigDecimal

示例

BigDecimal output = new BigDecimal(num)
    .divide(new BigDecimal(d), BigDecimal.ROUND_HALF_UP);