zoukankan      html  css  js  c++  java
  • Java实现 LeetCode 405 数字转换为十六进制数

    405. 数字转换为十六进制数

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

    注意:

    十六进制中所有字母(a-f)都必须是小写。
    十六进制字符串中不能包含多余的前导零。如果要转化的数为0,那么以单个字符’0’来表示;对于其他情况,十六进制字符串中的第一个字符将不会是0字符。
    给定的数确保在32位有符号整数范围内。
    不能使用任何由库提供的将数字直接转换或格式化为十六进制的方法。
    示例 1:

    输入:
    26

    输出:
    “1a”
    示例 2:

    输入:
    -1

    输出:
    “ffffffff”

    class Solution {
        public String toHex(int num) {
            	if (num == 0)
    			return "0";
    		char[] chars = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
    		StringBuilder sb = new StringBuilder();
    		while (sb.length() < 8 && num != 0) {
    			sb.append(chars[num & 0xf]);
    			num >>= 4;
    		}
    		return sb.reverse().toString();
        }
    }
    
  • 相关阅读:
    洛谷1509 找啊找啊找GF
    要怎样努力,才能成为很厉害的人?
    随笔
    2018NOIP模拟题 曲线
    洛谷4147 玉蟾宫
    洛谷2258 子矩阵
    Vijos 纸牌
    [leetcode] Word Break
    [leetcode] Maximum Binary Tree
    [leetcode] Binary Tree Preorder Traversal
  • 原文地址:https://www.cnblogs.com/a1439775520/p/13075110.html
Copyright © 2011-2022 走看看