private void binary {
String result = "11111111111111111111111111111000";
int resultNum = 0;
for(int i = 0; i < 32; i++) {
int number = result.charAt(i) - '0';
resultNum += number * Math.pow(2,(31 - i));
}
println("" + resultNum);
for 循环的每次迭代都会为 resultNum 分配新值,并覆盖前一个值而不是添加到它。我不明白为什么。
有一段时间没有用java编写了,但这可能有用 resultNum = resultNum + (number * Math.pow(2,(31 - i)));
我不认为在java中每个都使用+=,我大多只是将值添加到自身然后将其设置为我的变量。让我知道这是否有效!