Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 字符串不等于字符串? String[]字母={“A”、“B”、“C”、“D”、“E”、“F”、“G”、“H”、“I”、“L”}; 扫描仪inp=新扫描仪(System.in); 字符串输入=(inp.nextLine()); String[]cord=input.split(“”); 对于(int x=0;x_Java_String - Fatal编程技术网

Java 字符串不等于字符串? String[]字母={“A”、“B”、“C”、“D”、“E”、“F”、“G”、“H”、“I”、“L”}; 扫描仪inp=新扫描仪(System.in); 字符串输入=(inp.nextLine()); String[]cord=input.split(“”); 对于(int x=0;x

Java 字符串不等于字符串? String[]字母={“A”、“B”、“C”、“D”、“E”、“F”、“G”、“H”、“I”、“L”}; 扫描仪inp=新扫描仪(System.in); 字符串输入=(inp.nextLine()); String[]cord=input.split(“”); 对于(int x=0;x,java,string,Java,String,为什么是Fk耶!如果我输入一个A-L字母,就不会发生这种情况?字符串是对象。==通过引用而不是内部值来比较对象 有两种解决方案: 改为使用方法比较两个String对象的值 String[] letters = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "L"}; Scanner inp = new Scanner(System.in); String input = (inp.nextLine()); String[] cord = inpu

为什么是Fk耶!如果我输入一个A-L字母,就不会发生这种情况?

字符串是对象。
==
通过引用而不是内部值来比较对象

有两种解决方案:

  • 改为使用方法比较两个
    String
    对象的值

    String[] letters  = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "L"};
    
    Scanner inp = new Scanner(System.in);
    String input = (inp.nextLine());
    String[] cord = input.split("");
    
    for(int x = 0; x < 10; x++)
        if(letters[x] == cord[1])
            System.out.println("Fk yeah!");
    
  • 使用
    char
    而不是
    String
    。它是一个原语,所以
    ==
    可以工作

    if (letters[x].equals(cord[1]))
    
    char[]字母={'A','B','C','D','E','F','G','H','I','L'};
    扫描仪inp=新扫描仪(System.in);
    字符串输入=(inp.nextLine());
    char[]cord=input.toCharArray();
    对于(int x=0;x<10;x++)
    if(字母[x]==跳线[1])
    System.out.println(“Fk耶!”);
    

  • 要比较字符串是否相等,请不要使用==。==运算符检查两个对象是否完全相同。两个字符串可以是不同的对象,但具有相同的值(其中的字符完全相同)。使用.equals()方法比较字符串是否相等。类似地,使用.compareTo()方法测试不相等的比较。比如说,

    char[] letters  = {'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'L'};
    
    Scanner inp = new Scanner(System.in);
    String input = (inp.nextLine());
    char[] cord = input.toCharArray();
    
    for (int x = 0; x < 10; x++)
        if (letters[x] == cord[1])
            System.out.println("Fk yeah!");
    

    你确定
    cord
    实际上只是字母,没有空格吗?也可以是大写和小写,我肯定100%。不,它们都是大写。可能重复的应该使用
    compareTo
    而不是
    =
    你有很多badges@Code当前位置与Jon Skeet相比,这算不了什么。不管怎样,恭喜你:)我向你鞠躬Sir@BalusC-字符串中的
    #
    符号是否等于()这是一种实例方法吗?@Kublai:没什么特别的。我倾向于使用javadoc样式在书面文本中引用classname/methodname(就像在javadocs中通常做的那样)。
    String s = "something", t = "maybe something else";
    if (s == t)      // Legal, but usually WRONG.
    if (s.equals(t)) // RIGHT
    if (s > t)    // ILLEGAL
    if (s.compareTo(t) > 0) // CORRECT>