![](/img/trans.png)
[英](java) convert a decimal number to binary without using parseint
[英]Changing binary to decimal using created constants (not parseINT() ) and declaring and initializing each of the 8 bits of the number
我现在一直在为此工作。 我需要创建常量,然后声明并初始化每个常量,然后再将其乘以其位置值(128、64、32、16、8、4、2、1)
我知道Integer.parseINT(Binary ....)会很快完成这项工作,但是我不能使用它。
接下来是我到目前为止的情况,我是否走在正确的轨道上? 我知道我需要获取每个单独的用户输入值,并将它们乘以它们的位置值,然后相加来创建小数点,但是我一生都无法弄清楚如何通过for循环或定义每个变量
import java.util.Scanner;
import java.util.Arrays;
import java.util.List;
import java.util.ArrayList;
import java.lang.Integer;
import javax.swing.JComboBox;
public class Binary
{
public static void main(String [] args)
{
Scanner keyboard = new Scanner (System.in);
System.out.println("Enter Binary Number Please");
Integer[] digits = getDigits(keyboard.nextInt());
System.out.println(Arrays.toString(digits));
}//End bracket method main
public static Integer[] getDigits(int num)
{
List <Integer> digits = new ArrayList <Integer>();
collectDigits(num, digits);
return digits.toArray(new Integer[]{});
}//end bracket method Integer
private static void collectDigits(int num, List <Integer> digits)
{
if(num / 10 > 0)
{
collectDigits(num / 10, digits);
}//End method collectDigits
digits.add(num % 10);
}
}
我想分离用户输入二进制文件的每个字符,以便可以将它们乘以它们的位置值,然后添加每个乘积以创建总和,然后将其通过System.out.println()
显示给用户。
您正在导入错误的列表类型。 更改此行:
import java.awt.List;
至:
import java.util.List;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.