왜 이것이 작동하지 않는지 모르겠다. 여기서 컴파일 오류가 발생하지 않지만 프로그램은 항상 else 문을 반환합니다. 수술을 다른 방식으로 정의하거나 다른 방식으로 호출해야합니까?스윙을 사용한 Java 계산기
import javax.swing.JOptionPane;
public class Calculator1 {
public static void main(String []Args) {
String firstNum;
String operation;
String secondNum;
firstNum = JOptionPane.showInputDialog("Input a number.");
secondNum = JOptionPane.showInputDialog("Input another number.");
double num1 = Double.parseDouble(firstNum);
double num2 = Double.parseDouble(secondNum);
operation = JOptionPane.showInputDialog("Input an operation sign.");
if (operation == "x") {
System.out.println(num1 * num2);
}
if (operation == "*") {
System.out.println(num1 * num2);
}
if (operation == "/") {
System.out.println(num1/num2);
}
if (operation == ":") {
System.out.println(num1/num2);
}
if (operation == "+") {
System.out.println(num1 + num2);
}
if (operation == "-") {
System.out.println(num1 - num2);
}
else {
System.out.println("Please enter an appropriate operation sign.");
}
} }
operation.equals ("X")이 –
보기 [계산 예] (http://stackoverflow.com/a/7441804/418556). 'ScriptEngine'을 사용해 텍스트 필드의 표현을 평가합니다. –