如何比较字符串与字符

时间:2017-06-18 14:27:06

标签: java compare equals

伙计们如何将String与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);
}

如果我打电话给我的方法"尝试"即使我设定,也总是让我失意 s =" s"和c =' s'。

2 个答案:

答案 0 :(得分:4)

我要对任何一个初级开发人员说的第一件事就是不要使用“try”这个词作为方法名,因为try是java中的保留关键字。

其次认为你的方法需要考虑一些事情。

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

我会编写如下方法:

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

答案 1 :(得分:0)

使用字符比较(假设s总是长度为1):

return c == s.charAt(0);

或使用字符串比较:

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