23.leetcode

阅读 6

2022-01-17

算法作业

给定一个整数,编写一个算法将这个数转换为十六进制数。对于负整数,我们通常使用 补码运算 方法。

class Solution {
    public String toHex(int num) {
        StringBuilder stringBuilder = new StringBuilder();
        if (num == 0) //处理边界
            return "0";
        char[] chars = {'0','1','2','3','4','5','6','7','8','9',
                        'a','b','c','d','e','f'};
        while(num != 0)
        {
            stringBuilder.append(chars[num & 0xf]); //num与0xf进行&运算
            num >>>= 4; //对num进行无符号右移实现每4位截取
        }
        return stringBuilder.reverse().toString();
    }
}

在这里插入图片描述
在这里插入图片描述

精彩评论(0)

0 0 举报