java float乘_JAVA关于float类型的乘法的问题

三个JTextField文本框,一个文本框里写13.7,另一个文本框里写9,我把两个文本框里的字符串给转换成float类型然后将得出的结果放到第三个文本框里,但是一相乘,文本框里为什么是123....

三个JTextField文本框,一个文本框里写13.7,另一个文本框里写9,我把两个文本框里的字符串给转换成float类型然后将得出的结果放到第三个文本框里,但是一相乘,文本框里为什么是 123.299995 啊?

结果正常应该是 123.3 啊,怎样才能在文本框里得到123.3啊?

下边是我 的 代码:

package untitled1;

import java.awt.BorderLayout;

import javax.swing.JFrame;

import javax.swing.JTextField;

import java.awt.Rectangle;

import javax.swing.JButton;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

/**

*

Title:

*

*

Description:

*

*

Copyright: Copyright (c) 2008

*

*

Company:

*

* @author not attributable

* @version 1.0

*/

public class Frame1 extends JFrame {

public Frame1() {

try {

jbInit();

} catch (Exception exception) {

exception.printStackTrace();

}

}

private void jbInit() throws Exception {

getContentPane().setLayout(null);

jTextField1.setText("13.7");

jTextField1.setBounds(new Rectangle(51, 96, 77, 20));

jButton1.setBounds(new Rectangle(219, 171, 81, 23));

jButton1.setText("jButton1");

jButton1.addActionListener(new Frame1_jButton1_actionAdapter(this));

jTextField2.setText("9");

jTextField3.setBounds(new Rectangle(58, 175, 77, 20));

this.getContentPane().add(jTextField1);

this.getContentPane().add(jTextField2);

this.getContentPane().add(jButton1);

this.getContentPane().add(jTextField3);

jTextField2.setBounds(new Rectangle(223, 96, 77, 20));

}

public static void main(String[] args) {

Frame1 f = new Frame1();

f.setBounds(200, 100, 400, 300);

f.setVisible(true);

}

JTextField jTextField1 = new JTextField();

JTextField jTextField2 = new JTextField();

JButton jButton1 = new JButton();

JTextField jTextField3 = new JTextField();

public void jButton1_actionPerformed(ActionEvent e) {

float a = Float.parseFloat(jTextField1.getText());

int b = Integer.parseInt(jTextField2.getText());

jTextField3.setText(String.valueOf(a*b));

}

}

class Frame1_jButton1_actionAdapter implements ActionListener {

private Frame1 adaptee;

Frame1_jButton1_actionAdapter(Frame1 adaptee) {

this.adaptee = adaptee;

}

public void actionPerformed(ActionEvent e) {

adaptee.jButton1_actionPerformed(e);

}

}

展开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值