Compare commits

...

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

@ -1,120 +0,0 @@
package java6324.lesson06;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Calculator extends JFrame {
private JTextField input1, input2, result;
private JButton addButton, subtractButton, multiplyButton, divideButton, modButton;
private JPanel panel;
public Calculator() {
setTitle("Simple Calculator");
setSize(300, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new GridLayout(5, 4, 5, 5));
panel = new JPanel();
panel.setLayout(new GridLayout(5, 4, 5, 5));
input1 = new JTextField(5);
input2 = new JTextField(5);
result = new JTextField(5);
result.setEditable(false);
addButton = new JButton("+");
subtractButton = new JButton("-");
multiplyButton = new JButton("*");
divideButton = new JButton("/");
modButton = new JButton("%");
addButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
calculate(1);
}
});
subtractButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
calculate(2);
}
});
multiplyButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
calculate(3);
}
});
divideButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
calculate(4);
}
});
modButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
calculate(5);
}
});
panel.add(new JLabel("Input 1:"));
panel.add(input1);
panel.add(new JLabel("Input 2:"));
panel.add(input2);
panel.add(addButton);
panel.add(subtractButton);
panel.add(multiplyButton);
panel.add(divideButton);
panel.add(modButton);
panel.add(new JLabel());
panel.add(result);
add(panel);
setVisible(true);
}
private void calculate(int operation) {
try {
double num1 = Double.parseDouble(input1.getText());
double num2 = Double.parseDouble(input2.getText());
double res = 0;
switch (operation) {
case 1:
res = num1 + num2;
break;
case 2:
res = num1 - num2;
break;
case 3:
res = num1 * num2;
break;
case 4:
if (num2 != 0) {
res = num1 / num2;
} else {
result.setText("Error");
return;
}
break;
case 5:
if (num2 != 0) {
res = num1 % num2;
} else {
result.setText("Error");
return;
}
break;
}
result.setText(String.valueOf(res));
} catch (NumberFormatException e) {
result.setText("Invalid Input");
}
}
public static void main(String[] args) {
new Calculator();
}
}

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

@ -0,0 +1,112 @@
package java6226.lesson05;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Calculator extends JFrame {
private JTextField display;
private double result = 0;
private String operator = "";
private boolean calculating = true;
public Calculator() {
setTitle("Simple Calculator");
setSize(250, 350);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new BorderLayout());
display = new JTextField("0");
display.setEditable(false);
display.setHorizontalAlignment(JTextField.RIGHT);
add(display, BorderLayout.NORTH);
JPanel buttonPanel = new JPanel();
buttonPanel.setLayout(new GridLayout(4, 4, 5, 5)); // 4行4列的按钮布局
String[] buttonLabels = {
"7", "8", "9", "/",
"4", "5", "6", "*",
"1", "2", "3", "-",
"C", "0", "=", "+"
};
for (String label : buttonLabels) {
JButton button = new JButton(label);
button.setFont(new Font("Arial", Font.BOLD, 18));
button.setPreferredSize(new Dimension(50, 40));
button.addActionListener(new ButtonClickListener());
buttonPanel.add(button);
}
add(buttonPanel, BorderLayout.CENTER);
setVisible(true);
}
private class ButtonClickListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
String command = e.getActionCommand();
if (calculating) {
if (command.equals("C")) {
display.setText("0");
operator = "";
result = 0;
calculating = true;
} else if (command.equals("+") || command.equals("-") || command.equals("*") || command.equals("/")) {
operator = command;
calculating = false;
display.setText("");
} else if (command.equals("=")) {
calculate(Double.parseDouble(display.getText()));
} else {
display.setText(display.getText() + command);
}
} else {
if (command.equals("C")) {
display.setText("0");
operator = "";
result = 0;
calculating = true;
} else if (command.equals("=")) {
calculate(Double.parseDouble(display.getText()));
} else {
display.setText(display.getText() + command);
}
}
}
private void calculate(double num) {
switch (operator) {
case "+":
result += num;
break;
case "-":
result -= num;
break;
case "*":
result *= num;
break;
case "/":
if (num != 0) {
result /= num;
} else {
display.setText("Error");
return;
}
break;
}
display.setText("" + result);
operator = "";
calculating = true;
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new Calculator();
}
});
}
}
Loading…
Cancel
Save