toBinaryString类型错误

时间:2012-07-19 03:23:50

标签: java string compiler-errors int

编译以下内容时出现不兼容的类型错误:

public class E10_Bitwise {
    public static void main(String[] args) {
        Bit b = new Bit();
        int x = 87;
        int y = 170;
        x = Integer.toBinaryString(x);
        y = Integer.toBinaryString(y);
        b.combiner(x, y);
    }
}

出于某种原因,它认为括号内的x和y是字符串。我是在犯错误还是其他事情发生在这里?

E10_Bitwise.java:22 error: incompatible types
                 x = Integer.toBinaryString(x)
                                           ^
required: int
found: string

感谢您的帮助。

4 个答案:

答案 0 :(得分:2)

toBinaryString()的返回类型是String。

尝试,

String xStr=Integer.toBinaryString(x);

答案 1 :(得分:1)

您正尝试将类型String的返回值分配给int类型的变量。这不起作用。

您需要指定toBinaryString的返回值,如下所示:

String xStr = Integer.toBinaryString(x);
String yStr = Integer.toBinaryString(y);
b.combiner(xStr, yStr);

答案 2 :(得分:1)

您正在尝试分配String(Integer.toBinaryString())返回int x

您需要一个String变量来代替它。

答案 3 :(得分:1)

我根本不了解Java,但看起来你正试图将字符串(来自Integer.toBinaryString()调用的结果)分配给 int (x,y)。

我的猜测是toBinaryString()创建一个二进制字符串(例如“010101110”)表示整数。