Compare commits

...

No commits in common. 'main' and 'hac' have entirely different histories.
main ... hac

3
.idea/.gitignore vendored

@ -0,0 +1,3 @@
# 默认忽略的文件
/shelf/
/workspace.xml

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8 (2)" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/jdzy2.iml" filepath="$PROJECT_DIR$/.idea/jdzy2.iml" />
</modules>
</component>
</project>

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

@ -1,2 +0,0 @@
# jdzy

@ -0,0 +1,127 @@
package xzk;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Calculator extends JFrame implements ActionListener {
private JTextField num1Field, num2Field, resultField;
private JComboBox<String> operatorBox;
public Calculator() {
super("简单计算器");
setLayout(new BorderLayout());
// 创建面板
JPanel inputPanel = new JPanel(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.insets = new Insets(5, 5, 5, 5); // 设置组件之间的间距
// 创建输入字段和标签
gbc.gridx = 0;
gbc.gridy = 0;
inputPanel.add(new JLabel("第一个数字:"), gbc);
gbc.gridx = 1;
num1Field = new JTextField(10);
inputPanel.add(num1Field, gbc);
gbc.gridy = 1;
gbc.gridx = 0;
inputPanel.add(new JLabel("第二个数字:"), gbc);
gbc.gridx = 1;
num2Field = new JTextField(10);
inputPanel.add(num2Field, gbc);
gbc.gridy = 2;
gbc.gridx = 0;
inputPanel.add(new JLabel("操作符:"), gbc);
gbc.gridx = 1;
operatorBox = new JComboBox<>(new String[]{"+", "-", "*", "/", "%"});
inputPanel.add(operatorBox, gbc);
gbc.gridy = 3;
gbc.gridx = 0;
inputPanel.add(new JLabel("结果:"), gbc);
gbc.gridx = 1;
resultField = new JTextField(10);
resultField.setEditable(false);
inputPanel.add(resultField, gbc);
// 创建计算按钮
JButton calculateButton = new JButton("计算");
gbc.gridy = 4;
gbc.gridx = 0;
gbc.gridwidth = 2;
gbc.fill = GridBagConstraints.HORIZONTAL;
inputPanel.add(calculateButton, gbc);
// 添加事件监听器
calculateButton.addActionListener(this);
// 设置面板背景色
inputPanel.setBackground(Color.LIGHT_GRAY);
// 将面板添加到窗口
add(inputPanel, BorderLayout.CENTER);
// 设置窗口属性
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null); // 窗口居中显示
setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
try {
double num1 = Double.parseDouble(num1Field.getText());
double num2 = Double.parseDouble(num2Field.getText());
String operator = (String) operatorBox.getSelectedItem();
double result;
switch (operator) {
case "+":
result = num1 + num2;
break;
case "-":
result = num1 - num2;
break;
case "*":
result = num1 * num2;
break;
case "/":
if (num2 != 0) {
result = num1 / num2;
} else {
JOptionPane.showMessageDialog(this, "错误:除数不能为零");
return;
}
break;
case "%":
if (num2 != 0) {
result = num1 % num2;
} else {
JOptionPane.showMessageDialog(this, "错误:除数不能为零");
return;
}
break;
default:
JOptionPane.showMessageDialog(this, "无效的操作符!");
return;
}
resultField.setText(String.format("%.2f", result));
} catch (NumberFormatException ex) {
JOptionPane.showMessageDialog(this, "请输入有效的数字");
}
}
public static void main(String[] args) {
new Calculator();
}
}
Loading…
Cancel
Save