Java-program för att skapa en enkel kalkylator med switch ... fall

I det här programmet lär du dig att skapa en enkel miniräknare med switch … case i Java. Denna miniräknare skulle kunna lägga till, subtrahera, multiplicera och dela två nummer.

För att förstå detta exempel bör du ha kunskap om följande Java-programmeringsämnen:

  • Uttryck för Java-omkopplare
  • Java-skannerklass

Exempel: Enkel kalkylator med hjälp av switch Statement

 import java.util.Scanner; public class Main ( public static void main(String() args) ( Scanner reader = new Scanner(System.in); System.out.print("Enter two numbers: "); // nextDouble() reads the next double from the keyboard double first = reader.nextDouble(); double second = reader.nextDouble(); System.out.print("Enter an operator (+, -, *, /): "); char operator = reader.next().charAt(0); double result; switch (operator) ( case '+': result = first + second; break; case '-': result = first - second; break; case '*': result = first * second; break; case '/': result = first / second; break; // operator doesn't match any case constant (+, -, *, /) default: System.out.printf("Error! operator is not correct"); return; ) System.out.println(first + " " + operator + " " + second + " = " + result); ) )

Produktion

 Ange två siffror: 1,5 4,5 Ange en operatör (+, -, *, /): * 1,5 * 4,5 = 6,8

Den *operatör som användaren anger lagras i operatörsvariabeln med hjälp next()av Scannerobjektmetoden.

På samma sätt lagras de två operanderna 1.5 och 4.5 i variabler första respektive andra med användning nextDouble()av Scannerobjektmetoden.

Eftersom operatören *matchar när-tillståndet '*':hoppar kontrollen av programmet till

 resultat = första * andra; 

Detta uttalande beräknar produkten och lagrar i variabelt resultat och break; uttalandet avslutar växlingsuttalandet.

Slutligen printfutförs uttalandet.

Obs! Vi har använt printf()metoden istället för println. Detta beror på att vi här skriver ut den formaterade strängen. För att lära dig mer, besök metoden Java printf ().

Intressanta artiklar...