Problème avec un simple code de calculatrice (Java)


J'ai donc essayé de créer moi-même un programme de calculatrice simple en Java et il semble que j'ai rencontré un problème. Le code ne semble pas avoir d'erreur (aucune ne s'affiche dans Eclipse ou dans l'invite de commande), mais lorsque je l'exécute, il se termine après avoir entré l'opération. Voici l'exemple de mon code:

public class vjezba1
{
public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
Scanner text=new Scanner(System.in);

String opr;
int x;
int y;
int sum;

System.out.println("This is a simple calculator program.");
System.out.println("Input first number: ");
x = input.nextInt();

System.out.println("Input second number: ");
y = input.nextInt();

System.out.println("Choose an operation (+,-,*,/): ");
opr = text.nextLine();

if(opr == "+"){
    sum = x + y;
    System.out.println("Result is: " + sum);
}else if(opr == "-"){
    sum = x - y;
    System.out.println("Result is: " + sum);
}else if(opr == "*"){
    sum = x * y;
    System.out.println("Result is: " + sum);
}else if(opr == "/"){
    sum = x / y;
    System.out.println("Result is: " + sum);
}

}
}

Toute perspicacité est appréciée.

Author: Griffith, 2015-10-29

1 answers

Utiliser la méthode

Chaîne.equals ("string")

Lors de la comparaison de deux chaînes en Java

Commencez également les noms de vos classes avec une lettre majuscule, c'est une convention de programmation.

Http://www.oracle.com/technetwork/java/codeconventions-135099.html

import java.io.*;
import java.util.Scanner;

public class Vjezba1
{
public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
Scanner text=new Scanner(System.in);

String opr;
int x;
int y;
int sum;

System.out.println("This is a simple calculator program.");
System.out.println("Input first number: ");
x = input.nextInt();

System.out.println("Input second number: ");
y = input.nextInt();

System.out.println("Choose an operation (+,-,*,/): ");
opr = text.nextLine();
System.out.print(opr);
if(opr.equals("+")){
    sum = x + y;
    System.out.println("Result is: " + sum);
}else if(opr.equals("-")){
    sum = x - y;
    System.out.println("Result is: " + sum);
}else if(opr.equals("*")){
    sum = x * y;
    System.out.println("Result is: " + sum);
}else if(opr.equals("/")){
    sum = x / y;
    System.out.println("Result is: " + sum);
}

}
}
 1
Author: Marcin, 2015-10-28 23:28:39