淘先锋技术网

首页 1 2 3 4 5 6 7

随着计算机技术的发展,人们对于计算器的需求越来越高。为了满足这一需求,Java计算器应运而生。下面,我们将介绍Java计算器的设计和实现。

首先,我们需要确定计算器的基本功能。Java计算器的基本功能包括加、减、乘、除四则运算和开平方、取余、倒数操作等。因此,我们需要在代码中定义相应的方法。

public static double add(double num1, double num2) {
return num1 + num2;
}
public static double subtract(double num1, double num2) {
return num1 - num2;
}
public static double multiply(double num1, double num2) {
return num1 * num2;
}
public static double divide(double num1, double num2) throws Exception {
if (num2 == 0) {
throw new Exception("除数不能为0");
}
return num1 / num2;
}
public static double square(double num) {
return Math.sqrt(num);
}
public static double remainder(double num1, double num2) {
return num1 % num2;
}
public static double reciprocal(double num) throws Exception {
if (num == 0) {
throw new Exception("被除数不能为0");
}
return 1 / num;
}

在定义了基本的运算方法之后,我们需要在代码中实现计算器的界面。这里,我们使用Java Swing框架来创建计算器的界面。具体实现代码如下:

public class Calculator extends JFrame {
private static final long serialVersionUID = 1L;
private JTextArea textField;
private double num1;
private double num2;
private String operator;
public Calculator() {
setTitle("Java计算器");
setSize(300, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
textField = new JTextArea();
textField.setEditable(false);
add(textField, BorderLayout.NORTH);
JPanel buttonPanel = new JPanel(new GridLayout(4, 4));
add(buttonPanel, BorderLayout.CENTER);
addButton("7", buttonPanel);
addButton("8", buttonPanel);
addButton("9", buttonPanel);
addButton("/", buttonPanel);
addButton("4", buttonPanel);
addButton("5", buttonPanel);
addButton("6", buttonPanel);
addButton("*", buttonPanel);
addButton("1", buttonPanel);
addButton("2", buttonPanel);
addButton("3", buttonPanel);
addButton("-", buttonPanel);
addButton("0", buttonPanel);
addButton(".", buttonPanel);
addButton("=", buttonPanel);
addButton("+", buttonPanel);
setVisible(true);
}
private void addButton(String label, JPanel buttonPanel) {
JButton button = new JButton(label);
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (label.equals("+") || label.equals("-") || label.equals("*") || label.equals("/")) {
num1 = Double.parseDouble(textField.getText());
operator = label;
textField.setText("");
} else if (label.equals("=")) {
num2 = Double.parseDouble(textField.getText());
try {
if (operator.equals("+")) {
textField.setText(String.valueOf(add(num1, num2)));
} else if (operator.equals("-")) {
textField.setText(String.valueOf(subtract(num1, num2)));
} else if (operator.equals("*")) {
textField.setText(String.valueOf(multiply(num1, num2)));
} else if (operator.equals("/")) {
textField.setText(String.valueOf(divide(num1, num2)));
}
} catch (Exception ex) {
textField.setText(ex.getMessage());
}
} else {
textField.setText(textField.getText() + label);
}
}
});
buttonPanel.add(button);
}
public static void main(String[] args) {
new Calculator();
}
}

上面的代码实现了Java计算器的界面和相应的操作逻辑。用户可以通过界面输入相应的数字和操作符进行运算。

综上所述,Java计算器的设计和实现需要定义基本的运算方法和实现界面的逻辑,通过Java Swing框架实现界面。这种Java计算器不仅易于实现,而且非常方便实用。