405. El número se convierte en hexadecimal

convertir-a-serie-a-hexadecimal

Título Descripción
Dado un número entero, escribir un algoritmo para convertir este número a un número hexadecimal. Por entero negativo, que suelen utilizar el método aritmética de complemento.

Nota:
Hex Todas las letras (af) debe estar en minúsculas.
cadena hexadecimal no puede contener el exceso de ceros a la izquierda. Si el número a ser transformada es 0, entonces un solo carácter '0' está representado; otros casos, la cadena de caracteres hexadecimales no será el primer carácter 0.
Para asegurarse de que un número dado en el rango de 32 bits con signo entero.
No utilice cualquier biblioteca digital proporcionada por un método de conversión directa o formato hexadecimal.

Ejemplo 1:

Entrada: 26
Salida: "1a"

Ejemplo 2:

Entrada: -1
salida: "ffffffff"

código

public 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;
			//这里是移位操作符中的右移,对无符号数,高位补0;对有符号数,各编译器处理方式不同
		}
		return sb.reverse().toString();
	}
}

rendimiento
rendimiento

Publicado 75 artículos originales · ganado elogios 0 · Vistas 1510

Supongo que te gusta

Origin blog.csdn.net/qq_34087914/article/details/104100852
Recomendado
Clasificación