首页 > 解决方案 > 这是在java中比较字符串的正确方法吗?

问题描述

Scanner scanner= new Scanner(System.in);
    System.out.println("Answer the following quiestions:");
      System.out.println("1-Which of these letters is not a vowel?");
    {
        String a = "a-A";
        String b = "b-I";
        String c = "c-W";//true
        String d = "d-O";
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);
        System.out.println(d);
        String answer1 = scanner.next();
        System.out.println(answer1);
        System.out.println(c.equals(answer1));



    }

当我在java中比较两个字符串时,即使它应该是“真”,它仍然在输出中给我一个“假”

标签: javastringequals

解决方案


我想,你期望c用户的输入。

但是你在程序中的字符串cc-W. 所以你的程序只会显示 True,如果用户输入c-W.

将您的比较更改为:

System.out.println("c".equals(answer1))

推荐阅读