如何将二进制转换为十进制?

时间:2014-10-20 20:53:53

标签: java binary decimal

我差不多完成了这段代码,但它告诉我,public static int power中有一个非法的修饰符;线。你能帮忙吗?

public static int binToDec(int i)
{
    int[] numbers;//initialize variable
    int f = 4;
    String iString = "" + i;
    int result = 0;
    int length = iString.length();
    public static int power;
    for(power = iString.length(); power>=0;power--)
    {
    while(f == length && f >= 0)
    {

        numbers[power] = iString.charAt(power)^power;
    }

    length--;
    f--;
    }
    for(int g = 0; g <= numbers.length; g++)//double check constraints
    {
        result = numbers[g] = numbers[power];
    }

        return result;
}

5 个答案:

答案 0 :(得分:1)

修饰符publicstatic对方法内的局部变量没有意义,在那里无效。编译器错误表明您将其删除。

答案 1 :(得分:0)

删除&#34;公共静态&#34;在:

public static int power;

答案 2 :(得分:0)

在Java中,static意味着它是类中的变量或方法。换句话说,如果你使用static,它必须属于整个类的范围。如果您将该行代码移到方法之外,它应该可以解决您的问题。

答案 3 :(得分:0)

你可以这样做。

int power = Istring.length();  并从for循环中删除初始化。

答案 4 :(得分:0)

在方法中声明和定义变量只会将其范围限制为方法。 public是一个关键字,用于使其对每个类都可见,static使变量为整个类共享。

因此,方法变量不允许使用public和static。因此,只有final 这些变量允许使用关键字

有关范围,默认值和method, instance and class variables

的生命周期的更多信息,请查看此内容