1. Principio
Los métodos principales se llaman tohexstring (convirtiendo el tipo int en una cadena hexadecimal) y analizar (analizar la cadena en un int).
2. Código
public static void main (string [] args) {string hexString = colortoxvalue (color.red); System.out.println ("HexString:" + hexstring); Color color = fromstrtoargb (hexstring); System.out.println ("El valor argb del hexstring convertido a color :("+string.ValueOf (color.getalpha ())+","+string.valueOf (color.geted ()+","+string.valueOf (color.getGreen ())+","+string.ValueOf (color.getblue () ")") ")") "); } cadena estática privada colortoxValue (color color) {return inttoHexValue (color.getalpha ())) + inttoHexValue (color.getred ()) + inttoHexValue (color.getGreen ()) + inttoHexValue (color.getBlue ()); } cadena estática privada inttoHexValue (int number) {String result = Integer.ToHexString (número y 0xff); while (result.length () <2) {resultado = "0" + resultado; } return resultado.ToUpperCase (); } color estático privado fromstrtoargb (string str) {string str1 = str.substring (0, 2); Cadena str2 = str.substring (2, 4); Cadena str3 = str.substring (4, 6); Cadena str4 = str.substring (6, 8); int Alpha = Integer.ParseInt (str1, 16); int rojo = integer.parseInt (str2, 16); int verde = integer.parseInt (str3, 16); int blue = integer.parseInt (str4, 16); Color color = nuevo color (rojo, verde, azul, alfa); color de retorno; }3. Efecto
4. Puntos clave
4.1 Tohexstring: No hay nada que decir, JDK proporciona enteros convertidos en cadenas hexadecimales.
4.2 Número y 0xff: asegúrese de que solo los últimos 8 bits de datos de tipo INT sean válidos, y los 24 bits más altos no son válidos (todos 0), el tipo INT es de 32 bits, pero el valor de color máximo es 255, y solo se necesitan 8 bits para satisfacer las necesidades. Por lo tanto, debemos asegurarnos de que los datos entrantes sean un valor de color legal, y los datos superiores a 255 deben tratarse como 255. En este momento, hay dos formas. El primero es el método de procesamiento en este artículo, y el segundo es agregar juicio. Si los datos son superiores a 255, es igual a 255, y si es menor, no se procesará. En comparación, el método de procesamiento en este documento es el método de procesamiento con el menor código y es eficiente.
4.3 y: operación bitwise "y". Si el código binario es ambos 1, el resultado es 1, de lo contrario es 0.
4.4 0xff: 0x significa que el número hexadecimal es seguido por él; F es 15, y cuando se convierte a 2, es 1111, y las dos F son 1111 1111 (255 en decimales), los primeros 24 bits son 0. En este momento, realizar la operación asegura que solo el valor int en el rango 0-255 sea el valor de color válido.
Resumir
Lo anterior es todo el contenido de este artículo. Espero que el contenido de este artículo tenga cierto valor de referencia para el estudio o el trabajo de todos. Si tiene alguna pregunta, puede dejar un mensaje para comunicarse. Gracias por su apoyo a Wulin.com.