用Java做一个温度转换器 有摄氏度转华氏度有华氏度转摄氏度还有清空按钮
时间: 2023-10-03 07:08:09 浏览: 109
好的,我可以帮您实现一个简单的温度转换器。以下是Java代码示例:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class TemperatureConverter extends JFrame implements ActionListener {
private JTextField celsiusField, fahrenheitField;
private JButton convertButton, clearButton;
public TemperatureConverter() {
super("Temperature Converter");
// 创建摄氏度输入框和标签
JLabel celsiusLabel = new JLabel("Celsius: ");
celsiusField = new JTextField(10);
// 创建华氏度输入框和标签
JLabel fahrenheitLabel = new JLabel("Fahrenheit: ");
fahrenheitField = new JTextField(10);
// 创建转换按钮
convertButton = new JButton("Convert");
convertButton.addActionListener(this);
// 创建清空按钮
clearButton = new JButton("Clear");
clearButton.addActionListener(this);
// 创建面板并添加组件
JPanel panel = new JPanel(new GridLayout(3, 2));
panel.add(celsiusLabel);
panel.add(celsiusField);
panel.add(fahrenheitLabel);
panel.add(fahrenheitField);
panel.add(convertButton);
panel.add(clearButton);
// 添加面板到窗口
getContentPane().add(panel);
// 设置窗口大小和关闭操作
setSize(300, 120);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
// 监听转换和清空按钮事件
public void actionPerformed(ActionEvent e) {
if (e.getSource() == convertButton) {
// 摄氏度转华氏度公式:F = C * 9/5 + 32
double celsius = Double.parseDouble(celsiusField.getText());
double fahrenheit = celsius * 9/5 + 32;
fahrenheitField.setText(String.format("%.2f", fahrenheit));
} else if (e.getSource() == clearButton) {
// 清空输入框
celsiusField.setText("");
fahrenheitField.setText("");
}
}
public static void main(String[] args) {
new TemperatureConverter();
}
}
```
这个温度转换器有一个摄氏度输入框和一个华氏度输入框,以及一个转换按钮和一个清空按钮。当用户点击转换按钮时,程序会将摄氏度转换为华氏度并显示在华氏度输入框中。当用户点击清空按钮时,程序会清空所有输入框。
阅读全文