首页 > 解决方案 > 如果陈述不应该评估为真?

问题描述

我是一个完整的 Java 菜鸟。这段代码运行良好,没有编译错误,但是当我单步执行程序时,我发现底部的 if 语句从未计算为 true。我错过了什么?

import java.util.Scanner;

public class rps {
   public static void main(String args[]) {
      Scanner scanner = new Scanner(System.in);

      println("Select rock (0), paper (1), or scissors (2)");
      String input = scanner.nextLine();

      if (Integer.parseInt(input) < 0 || Integer.parseInt(input) > 2) {
         input = Long.toString(Math.round(Math.random() * 2));
      }

      if (input == "0") {
         println("You played rock");
      } else if (input == "1") {
         println("You played paper");
      } else if (input == "2") {
         println("You played scissors");
      }
   }

   static void println(String a) {
      System.out.println(a);
   }
}

标签: java

解决方案


推荐阅读