2017-07-28 29 views
-2

这是整个项目,它应该尽我所能地看到,但我希望在这里张贴它可以让我看到我错过的东西,我有一个温和的与Java经验量Java代码将不会打印出答案或正确读取int

package com.company; 

import java.util.Random; 
import java.util.Scanner; 

public class Main { 

public static void main(String[] args) { 
// write your code here 
    Scanner input = new Scanner(System.in); 

    int number1; 
    int number2; 
    int answer; 
    String operator; 

此计算出的数字和运营商的用户想要什么

System.out.println("Please Enter your first number"); 
     number1 = input.nextInt(); 
     System.out.println("Please enter your second number"); 
     number2 = input.nextInt(); 
     System.out.println("Please enter your operator: + , - , * ,/"); 
      operator = input.next(); 

if语句应该确定用户希望其子及applys两个数字,然后调用randomEquation方法使其成为错误答案

  if (operator == "+") { 
       answer = number1 + number2; 
       System.out.println("Your answer is: " + randomEquation(answer)); 
      } else if (operator == "-") { 
       answer = number1 - number2; 
       System.out.println("Your answer is: " + randomEquation(answer)); 
      } else if (operator == "*") { 
       answer = number1 * number2; 
       System.out.println("Your answer is: " + randomEquation(answer)); 
      } else if (operator == "/") { 
       answer = number1/number2; 
       System.out.println("Your answer is: " + randomEquation(answer)); 
      } 



} 

这种方法适用于随机其中的一个答案创建错误的答案

public static int randomEquation(int number) { 
    Random rand = new Random(); 
    int random = rand.nextInt(100) + 1; 
    int answer = number; 
    if (random <= 100 && random >= 81) { 
     answer = number * 25; 
     return answer; 
    } 
    else if(random <= 80 && random >= 61){ 
     answer += 13; 
     return answer; 
    } 
    else if(random <= 60 && random >= 41){ 
     answer /= 2; 
     return answer; 
    } 
    else if(random <= 40 && random >= 21){ 
     answer -= 16; 
     return answer; 
    } 
    else{ 
     answer %= 4; 
     return answer; 
    } 
    } 
    } 

回答

1

您需要使用.equals与弦乐。

相反的:

operator == "+" 

尝试:

"+".equals(operator)