04-JavaSE [API común, colección, iterador]

1. Embalaje

Concepto: Los 8 tipos de datos básicos en Java se encapsulan y encapsulan como clases (clases de empaquetado)

embalaje

  • 8 种 : Byte 、 Corto 、 Entero 、 Largo 、 Flotante 、 Doble 、 Carácter 、 Booleano

  • Función: encapsulación basada en 8 tipos de datos básicos y proporciona algunas funciones relacionadas para los tipos de encapsulación

    • //Long类型的最大值:
      Long.MAX_VALUE;//使用包装类中的静态常量
      
    • Papel en el desarrollo:

      • Realice el intercambio entre el tipo de cadena y el tipo de datos básicos
  • Domine los puntos clave: el intercambio entre el tipo de cadena y el tipo de datos básicos

    • Tipo de datos básico => Cadena

      • int num=100;
        String s = num+"";//最简单的方式:使用+""
        
    • String => tipo de datos básico

      • //使用包装类对象中的静态方法:parseXxx(String s)
        String s ="3.14";
        double num = Double.parseDouble(s); 
        
  • Pregunta: ¿Se pueden usar los tipos de datos básicos y las clases de empaquetado entre sí?

    • Respuesta: si. Auto-boxing y auto-unboxing

Clase de caso entero:

//构造方法
Integer num1 = new Integer(100);//num1中存储了100
Integer num2 = new Integer("123");//把字符串"123"转为整数123


//使用:(把包装当做普通的变量来使用)
num1 = num1 + 100;



//包装类可以不使用构造方法,就可以进行赋值
Integer num3 = 100;
//运算
num3 = num3 + 1;
//通常反编译查看源代码:

public class IntegerDemo1
{
    
    
	public IntegerDemo1()
	{
    
    
	}

	public static void main(String args[])
	{
    
    
        //装箱的操作:Integer类中的静态方法:valueOf(数值)
		Integer num3 = Integer.valueOf(100);
        //拆箱操作: Integer类中的方法: intValue()
		num3 = Integer.valueOf(num3.intValue() + 1);
		System.out.println(num3);
	}
}

//结论:不需要自己书写装箱和拆箱的代码
只需要把包装类类型作为普通的的数据类型使用

Pregunta 1: ¿Cómo convertir datos de tipo común a tipo String?

最简单做法:使用+""    //任意类型的数据和字符串类型相加,结果都是String

Pregunta 2: ¿Convertir el tipo de cadena en datos de tipo común?

使用包装类中的静态方法:parseXxx(String str)
Xxx: Int、Float、Double、Long、Boolean
    示例:
        int num = Integer.parseInt("122")
        double num = Double.parseDouble("3.14");

//注意:character类中没有parseXxx()方法
String => char
    String str="a";
    char ch = a.charAt(0);

En segundo lugar, la clase String

  • Clase de cadena: se utiliza para almacenar datos en formato de cadena
    • Creación de instancias: cadena pública (), cadena pública (cadena s), cadena pública (char [] chs), ...
      • La forma más sencilla: String s = "aaa";
    • Métodos comunes:
      • Método de juicio
      • Como obtener
      • Método de interceptación
      • Método de reemplazo
      • Método de corte
      • Método de conversión
String s1=" itcast ";
String s2="itcast";

boolean result = s1.equals(s2)//false 
                 s1.trim()//去除前后空格
                 s1.trim().eqauls(s2)//true
    
 //split("切割符号")
 String str="张三,23,男,2020-03-20,13800138000";
 String[] strs = str.split(",");//张三  23  男  2020-03-20   13800138000
         //strs={"张三","23","男","2020-03-20","13800138000"}

Tres, clase Arrays

  • Clase: clase de herramienta para operar en matrices
  • Creación de instancias: no es necesario crear una instancia
  • Métodos comunes:
    • Ordenar: ordenar (matriz)
    • Convierta la matriz en una cadena: toString ()

Cuatro, entero grande, clase de coma flotante grande

  • Clase BigInteger

    • Clase: Entero grande (usado para almacenar valores enteros en el rango de super-enteros)
    • Creación de instancias: BigInteger num = new BigInteger ("12312312312312313123123123132")
    • Métodos comunes:
      • Sumar, restar, multiplicar, dividir
  • Clase BigDecimal

    • Clase: punto flotante grande (utilizado para almacenar decimales de alta precisión)
    • Creación de instancias: BigDecimal num = new BigDecimal ("3213123123.123123123123123123123123123123");
    • Métodos comunes:
      • Sumar, restar, multiplicar, dividir
        • Dividir: se produce una excepción cuando la división no se puede agotar.
          • Solución: Es necesario aclarar el número de dígitos de precisión decimal después de la división y la forma de elegir

Cinco, expresiones regulares

Expresión regular:

  • Una regla basada en la combinación de algunos símbolos específicos para verificar si la cadena cumple con el estándar
    • Ejemplo: cadena de número de teléfono móvil, cadena de identificación
      • El número de teléfono no puede dar ningún carácter a voluntad, debe ser dado de acuerdo con las reglas del número de teléfono.
        • Regular: reglas para restringir cadenas de números de teléfonos móviles

Conclusión: la expresión regular se usa para operar una cadena de
expresión regular

  • Rol: verificar la cadena
    • Ejemplo: Los datos del buzón en el programa se pueden almacenar en tipo String, y se puede realizar una verificación regular en el buzón almacenado en String para asegurar que el buzón cumpla con el estándar de datos que se utilizará.
  • Expresión regular: es una regla de verificación de cadenas formada por una combinación de algunas coincidencias específicas.
    • Clase de caracteres: [az], [abc],[a-z&[^abc]]
    • Operadores: &&, |
    • Caracteres predefinidos: \ d \ w.
    • Cuantificador :? * + {n} {n,} {n, m}
    • Grupo: (expresión regular)
  • Los métodos regulares se pueden usar en String:
    • Coincidencias booleanas (String regex) // Compruebe si la cadena cumple con las reglas regulares
    • String [] split (String regex) // De acuerdo con la expresión regular dada, corte la cadena
    • String replaceAll (String regex, String newChar)

Métodos en la clase String:

public boolean matches(String 正则表达式字符串) 
    //功能:用来验证字符串对象是否符合指定的正则表达式规则
    
示例:
    String s="add";
    boolean flag = s.matches("[a-z]ad");//结果:fales
System.out.print("ab\nc");//结果:ab 换行 c

//就希望输出: “ab\nc”
System.out.print("ab\\nc")
    
split("\\.")    //语法的特殊性

Seis, colección colección

Aprenda las habilidades de montaje:

  • Sepa qué estructura de datos se utiliza en la parte inferior de cada objeto de colección.
    • Solo cuando comprenda qué es la estructura de datos, podrá saber qué colección debe usarse para almacenar datos en desarrollo
  • Funciones en la colección: agregar, eliminar, modificar, verificar, recorrer

Colección
Inserte la descripción de la imagen aquí 1. Descripción general de las colecciones
La ArrayList que hemos aprendido antes es una colección, y una colección es un contenedor
que puede almacenar varios datos . Los contenedores comunes son colecciones y matrices.

¿Cuál es la diferencia entre una colección y una matriz?

  1. La longitud de la colección es variable y la longitud de la matriz es inmutable.
  2. Las colecciones solo pueden almacenar tipos de datos de referencia (si desea almacenar los tipos de datos básicos deben estar en
    caja), las matrices pueden usar cualquier definición de tipo y almacenar datos de los tipos correspondientes

2. Clasificación de
colecciones Hay dos clasificaciones principales de colecciones:

  1. Colección (estudiar hoy)
  2. Colección de mapas (aprendido más adelante) La
    ArrayList que aprendimos antes es una implementación de la colección Collection.

3. Sistema de herencia de colección de colección
En el sistema de colección de aprendizaje, generalmente primero aprenda la interfaz de nivel superior. Después de aprender
los métodos de la interfaz de nivel superior y los métodos heredados de los subtipos,
no es necesario repetir el aprendizaje.
Por lo tanto, primero aprendemos la colección Colección y vemos
qué funciones están disponibles en la Colección.
Métodos comunes de colección
4, métodos comunes
public boolean add (E e): Agrega el objeto dado a la colección actual.
public void clear (): borra todos los elementos de la colección.
public boolean remove (E e): Elimina el objeto dado en la colección actual.
public boolean contains (Object obj): determina si la colección actual contiene el objeto dado.
public boolean isEmpty (): determina si la colección actual está vacía.
public int size (): Devuelve el número de elementos de la colección.
public Object [] toArray (): almacena los elementos de la colección en una matriz

Siete, iterador iterador

efecto

Se utiliza para recorrer la colección Collection. El propósito de aprender iteradores es recorrer la colección
Inserte la descripción de la imagen aquí

Describe brevemente los pasos para usar iteradores.

Inserte la descripción de la imagen aquí

1. Obtenga primero el objeto iterador de la colección

2. Utilice el objeto iterador para llamar a hasNext () para determinar si existe el siguiente elemento

3. Si se llama al método next (), obtenga el siguiente elemento

4. Repita los pasos 2 y 3 hasta que el método hasNext devuelva falso.

Notas sobre el uso de iteradores
1. 当迭代器迭代元素完成后,不能继续next获取元素,
否则会报:NoSuchElementException

2. 当迭代器在使用的过程中,不能使用集合对象增删元素。会导致报错
ConcurrentModificationException。如果要删除可以使用迭代器来删除

Ocho, mejora el bucle for

Mejorado para bucle (foreach), utilizado específicamente para atravesar colecciones o matrices, la implementación subyacente utiliza iteradores.

para (tipo de variable variable: matriz / colección) {

//Procesamiento de datos

}

Nota: La variable es el elemento obtenido en cada bucle y el tipo de variable es el tipo de elemento de la matriz o colección.

Después de eso, no puede continuar obteniendo el elemento siguiente; de ​​lo
contrario, informará: NoSuchElementException

  1. Cuando el iterador está en uso, el objeto de colección no se puede usar para agregar o eliminar elementos. Causará un error
    ConcurrentModificationException. Si desea eliminar, puede usar el iterador para eliminar

#### 八、增强for循环

增强for循环(foreach),专门用来遍历集合或者数组,底层实现使用迭代器。



for( 变量类型 变量 : 数组/集合 ) { 

 //处理数据

}

说明:变量就是每次循环所获取的元素,变量类型就是数组或者集合的元素类型



**IDEA快速构建增强for循环:集合/数组.for** 

Supongo que te gusta

Origin blog.csdn.net/mmmmmCJP/article/details/115147468
Recomendado
Clasificación