2015-10-28 3 views
1

Итак, я пытаюсь сделать простую программу калькулятора в Java сам, и я, похоже, столкнулся с проблемой. Код, похоже, не имеет ошибки (ни один из них не отображается в Eclipse или в командной строке), но когда я его запускаю, он заканчивается после ввода операции. Вот пример моего кода:Проблема с простым кодом калькулятора (Java)

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); 
} 

} 
} 

Оценка всех и каждого.

+3

Используйте 'равно()' для сравнения. Проверить [Как сравнить строки в Java?] (Http://stackoverflow.com/questions/513832/how-do-i-compare-strings-in-java) – sam

+0

Почему этот вопрос помечен тегом [tag: javascript]? –

ответ

1

Использование метода

String.equals ("строка")

при сравнении двух строк в Java

также начать имена ваших классов с заглавной буквы, то есть соглашение о программировании.

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); 
} 

} 
}