面试题:打印一个整形的二进制表现形式

很简单的例子,体现字符串倒序的方法。


方法一:

    public static String toBinaryString(int a) {
        String s = "";
        for (int n = a; n > 0; n /= 2) {
            s = (n % 2) + s; // 因为取余最后是倒序,所以这里新来的字符串是+在前面的
        }
        return s;
    }

方法二:

利用栈后进先出的特性来进行倒序。即把元素全部push一个栈中,再pop,就可以进行逆序。

 1     public static String toBinaryString_1(int a) {
 2         Stack<Integer> stack = new Stack<>();
 3         String s = "";
 4         while (a > 0) {
 5             stack.push(a % 2);
 6             a /= 2;
 7         }
 8         while (!stack.isEmpty()) {
 9             s += stack.pop();
10         }
11         return s;
12     }
原文地址:https://www.cnblogs.com/kkkky/p/7850250.html