错误:不兼容的类型:意外的返回值Char与String比较

时间:2018-08-02 12:29:42

标签: java arrays string char

我正在尝试将char与String进行比较,但出现错误。 错误

error: incompatible types: unexpected return value

代码:

public class MyClass {
    public static void main(String args[]) {
        String s = Integer.toBinaryString(2432);
        String p = "0";

        for (char c : s.toCharArray()) {
            return p.equals(new String(new char[]{c}));
        }
    }
}

3 个答案:

答案 0 :(得分:4)

main()的类型为voidpublic static void main(String args[]) {)  因此,您不能从中返回值。

运行此命令时得到的实际错误是:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
Void methods cannot return a value

答案 1 :(得分:2)

字符不是对象,可以/应该使用==运算符进行比较。无需每次都构建一个字符串。同样,main方法不能返回任何值,它是void

答案 2 :(得分:1)

main方法不能返回任何内容,它的类型为void。 您可以编写一个单独的函数来返回该值,将该值分配给变量或仅打印该值。

public boolean strChar(String s, String p){
    return p.equals(new String(new char[]{c}));
}

System.out.println(p.equals(new String(new char[]{c})));

boolean equals = p.equals(new String(new char[]{c}));