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

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


 

方法一:

    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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值