如何比较字符串和字符

How to Compare a String with a Char

伙计们,我如何比较字符串和字符?

这是我的代码:

private String s;
private char c;

public K(String string, char cc){
    setS(string);
    setC(cc);
}

public void setS(String string){
    this.s = string;
}

public void setC(char cc){
    this.c = cc;
}

public boolean equals(K other){
    return s.equals(c);
}

public boolean try(){
    return s.equals(c);
}

如果我调用我的方法 try,它总是 returns me false 即使我设置 s = "s"c = 's'.

要么使用字符比较(假设 s 的长度始终为 1):

return c == s.charAt(0);

或使用字符串比较:

return s.equals(new String(new char[]{c}));

我要对我的初级开发人员说的第一件事是不要使用 "try" 这个词作为方法名称,因为 try 是 java.[=11= 中的保留关键字]

其次认为在你的方法中有几点需要考虑。

如果你比较两种不同类型的东西,它们永远不会相同。 字符串可以为空。 字符串有多长。 第一个字符。

我会这样写方法:

public boolean isSame() {
    if (s != null && s.length() == 1 { 
        return s.charAt(0) == c;
    }
    return false;
}