decimal到binary转换器测试器类

时间:2018-03-26 22:54:14

标签: java arrays binary decimal computer-science

我正在eclipse上编写一个小程序,用于将小数转换为二进制的赋值。这些是这个特定任务的说明,这是我到目前为止的代码:

编写一个DecToBinConverter类,它具有一个实现以下算法的公共静态void printInBinary(int n)方法:

  1. 设S为Integer类型的空堆栈。
  2. 如果n为零,则打印0
  3. 当n大于0时  一个。 rem = n%2
     湾将rem推入堆栈S
     C。 n = n / 2
  4. 虽然S不是空的  一个。 digit = S.pop()
     湾打印数字
  5. 编写一个创建此数组的DecToBinConverTester:

    Integer [] numbers = {new Integer(23),
                          new Integer(47),
                          new Integer(257),
                          new Integer(1023),
                          new Integer(0),
                          new Integer(82),
                          new Integer(512),
                          new Integer(100),
                          new Integer(2049)};
    并且对于每个数字[i]首先打印它,然后为它调用printInBinary方法。

    到目前为止我的代码:

    package stack;  
    public class DecToBinConverter  
    {  
        public static void printInBinary (int n)  
        {  
            ArrayStack<Integer> S = new ArrayStack<Integer>(n);    
            if (n == 0)  
            System.out.println ("0");
    
        while (n > 0)
        {
            int rem = n % 2;
            S.push(rem);
            n = n/2;                    
        }   
    
        while (n != 0)
        {
            int digit = S.pop();
            System.out.println(digit);          
        }
    }
    }  
    

    和我的测试员班级:

    package stack;  
    public class DecToBinConverterTester   
    {  
        public static void main (String[] args)  
    {  
        Integer[] numbers = { new Integer(23),  
                              new Integer(47),  
                              new Integer(257),  
                              new Integer(1023),  
                              new Integer(0),  
                              new Integer(82),  
                              new Integer(512),  
                              new Integer(100),  
                              new Integer(2049) };  
    
        for (int i = 0; i < numbers.length; i++)
        {
            System.out.println(numbers.printInBinary(i));
        }
    }
    

    }

    我的DecToBinConverter类符合但我在测试器类上有点麻烦。尝试调用printInBinary方法进行打印时,我一直收到错误。 确切的错误说明:方法printInBinary()未定义类型为整数,并且无法在数组类型integer []上调用printInBinary(int)。有人可以解释一下该错误意味着什么或我的代码是什么不见了?谢谢:))

1 个答案:

答案 0 :(得分:0)

使用DecToBinConverter.printInBinary(numbers[i]);