Embalaje
Concepto : una clase que encapsula los tipos de datos básicos en tipos de objetos se denomina clase de contenedor (la ventaja es que puede proporcionar más funciones para manipular valores básicos).
Java proporciona 8 tipos básicos de clases de empaquetado correspondientes, como se muestra en la figura:
Convertir cadena a tipo básico:
Nota: parseXXX (String s); donde XXX representa el tipo básico, el parámetro es una cadena que se puede convertir al tipo básico, si la cadena no se puede convertir al tipo básico, se producirá el problema de conversión de número NumberFormatException .
Hay 3 formas de convertir valores básicos en cadenas:
- El tipo básico se puede conectar directamente con "", 34 + ""
- Llame al método valueOf de String; String.valueOf (34) ;
3. Llame al método toString en la clase wrapper; Integer.toString (34);
Características de JDK5: embalaje y desembalaje automáticos
- Unboxing automático: los objetos se convierten en valores básicos.
- Empaque automático: los valores básicos se convierten en objetos
Entero i = 4; // Embalaje automático. Equivalente a Integer i = Integer.valueOf (4);
i = i + 5; // El lado derecho del signo igual: convierte el objeto i en un valor básico (desempaquetado automático) i.intValue () + 5; Después de completar la operación de suma, vuelve a encuadrar y convierte el valor básico en un objeto
- Demostración de detalles de boxeo automático (conjunto constante de bytes)
Cuando el valor está dentro del rango de bytes, se realiza un boxeo automático y se utiliza el espacio existente en lugar de crear un nuevo espacio de objetos.
Entero a = nuevo entero (3);
Entero b = nuevo entero (3);
Sistema. out .println (a == b); //falso
Sistema. out .println (a.equals (b)); //cierto
Entero x = 127;
Integer y = 127;
// Cuando jdk1.5 se encuadra automáticamente, si el valor está dentro del rango de bytes, el espacio del objeto no se creará nuevamente, sino que se usará el espacio existente.
Sistema. out .println (x == y); //cierto
Sistema. out .println (x.equals (y)); //cierto
char proporciona la clase de empaquetado Clase de personaje
Métodos comunes:
1 |
isLetter () : si es una letra |
2 |
isDigit () : si es un carácter numérico |
3 |
isWhitespace () : si es un carácter en blanco |
4 4 |
isUpperCase () : si es una letra mayúscula |
5 5 |
isLowerCase () : si es minúscula |
6 6 |
toUpperCase () : especifique la mayúscula de las letras |
7 7 |
toLowerCase (): especifique la letra minúscula |
8 |
toString (): devuelve la forma de la cadena de caracteres, la longitud de la cadena es solo1 |
Caso: Contando el número de varias cadenas de caracteres
int bigCount = 0;
int smallCount = 0;
int numberCount = 0;
String s1= "wwwTTTcccyyy193yyy";
// 把字符串转换为字符数组
char[] chs = s1.toCharArray();
// 遍历字符数组,获取每一个字符
for (int x = 0; x < chs.length; x++) {
// 判断该字符是
if (Character.isUpperCase(chs[x])) {
bigCount++;
} else if (Character.isLowerCase(chs[x])) {
smallCount++;
} else if (Character.isDigit(chs[x])) {
numberCount++;
}
}
// 输出结果即可
System.out.println("大写字符:" + bigCount + "个");
System.out.println("小写字符:" + smallCount + "个");
System.out.println("数字字符:" + numberCount + "个");