Nota 04- JAVA bastidor trasero conjunto genérico -List-Mapa-Set-

Set puede ser visto como un recipiente para almacenar la información del objeto.

Sobre las colecciones de las diferencias y las matrices: la
longitud de la matriz es fija, si se desea aumentar la longitud, sólo se puede crear una nueva matriz.
La longitud colección es variable, la teoría añadido datos expansión ilimitada, automático.
Tipo de elemento de la matriz debe ser del mismo tipo, tales como String [] arr = [ "a ", "b", "c"];
elementos de la colección pueden ser de diferentes tipos ArrayList <Objeto> arr = new ArrayList <Objeto> () ;

clase de colección de Java se compone de dos raíz principal interfaz de Colección y la Hoja de
Colección:
    conjunto de interfaz de nivel superior de
    tres sub-categorías
    lista ---------------- está lista ordenada, el sujeto tiene un menor, se puede repetir de
        la ArrayList    
            la implementos ArrayList array de longitud variable, asignar espacio contiguo en la memoria
            - las ventajas de: la eficiencia y de acceso aleatorio a través de los elementos del elemento es relativamente alta
            - desventajas: la necesidad de añadir y eliminar un gran número de elementos móviles de baja eficiencia, de acuerdo con el contenido de la baja eficiencia de búsqueda
        LinkedList
            ListaEnlazada vinculado almacenamiento de lista.
            - Ventajas: Insertar, eliminar elementos más eficiente
            - desventajas: atravesar elemento y un ineficiencias de acceso aleatorio
        vectorial Vector clase implementa una matriz dinámica. ArrayList muy similares y obsoletos
        
        vínculos y diferencias entre el vector y ArrayList son:
            - para lograr los mismos principios, la misma función, son gama de longitud variable de estructuras, una gran cantidad de tiempo
            de espera puede ser interoperables
            - la principal diferencia entre los dos es de la siguiente manera
            ▪ vector es un JDK temprana interface, ArrayList es un nuevo vector alternativa interfaz
            ▪ thread-safe Vector, velocidad ArrayList de seguridad pesada luz, no thread-safe
            ▪ necesidad de aumentar la longitud de tiempo, predeterminado Vector duplicó,% de crecimiento ArrayList en 50
            (1,5 + 1)
    del Conjunto -------------- --- conjuntos no tienen orden, pero deben LinkHashSet excepción, no la tabla de abajo, no pueden ser repetidos!
                        Método (entradas o salidas efectuadas Ji siempre coinciden secuencia) es similar a los datos de la operación no es la presencia de lista, la interfaz conjunto get get () no exista método!
        HashSet: el uso de hash de almacenamiento de tabla de estructura de Hashtable
             ventajas: rápida para añadir velocidad, la velocidad de consulta rápida, la velocidad de eliminación
             Desventajas: desordenada
        LinkedHashSet
            utilizando una estructura de hash de almacenamiento de tabla durante el uso de una lista enlazada a mantener el orden en
            orden (el orden de adición)
        TreeSet
            usando árbol binario (roja negro de árboles) estructura de almacenamiento
            ventajas: ordenado (ascendente) ordenada velocidad consulta lista más rápido que
            inconvenientes: la velocidad de consulta no es rápido HashSet
    cola de las colas es una tabla especial lineal, se permite operación de eliminación solamente en el extremo frontal de la mesa, realizar la inserción en el extremo trasero de la mesa.
    
    mapa:
        ------------------------- HashMap
            clave única alteración del orden público (el conjunto)
            Valor desordenada única Ji (Colección)
        TreeMap -------- -----------------
            velocidad de hash solicitado no es rápido
        ConcurrentHashMap ---------------
            concurrentes relacionados con el Mapa
            
        HashMap y enlaces tabla hash y diferencias :
            - lograr los mismos principios, la misma función, la estructura subyacente es una tabla hash, consulta velocidad,
            en muchos casos utilizan indistintamente
            - la principal diferencia entre los dos es de la siguiente manera
            ▪ Hashtable es la interfaz proporcionada por el anterior JDK, HashMap es una nueva versión del
            JDK interfaz proporcionada
            ▪ clase Hashtable hereda Dictionary, implementos HashMap la interfaz del mapa
            ▪ Hashtable es thread-safe, HashMap no thread-safe
            ▪ Hashtable Ji permite valores nulos, HashMap permite valores nulos
interfaz Iterator:
    recipiente de recogida de toda clase implementa la interfaz tiene un método para iterador devuelve un objeto que implementa la interfaz Iterator.
    objetos ▪ Iterator refiere iterador para facilitar la realización de la operación de desplazamiento dentro de los elementos contenedores.
    interfaz ▪ Iterator define los siguientes métodos:
    booleanas la hasNext (); // determina si o no el elemento es atravesada
    objeto siguiente (); // devuelve la posición actual del cursor y el cursor se mueve a la siguiente posición del elemento
    remove void (); // eliminar los elementos cursor a la izquierda, que en la siguiente después de realizar
     // operación sólo puede realizarse una vez
Herramientas colecciones
    diferentes colecciones y colección, la primera categoría es una operación de recogida, que es un conjunto de interfaces de
    colecciones proporciona métodos estáticos
    addAll (): lote Agregar
    sort (): Ordenar
    busquedaBinaria (): búsqueda binaria
    Fill (): Como alternativa
    shuffle (): orden aleatorio
    inversa (): inversa
genérica:
    tipo genérico de la operación para resolver los datos anormales generadas Ji uniforme.
    Los medicamentos genéricos se pueden utilizar para los tipos de datos a proteger mejor. 
    
    Un ejemplo:
    Lista nuevo nuevo = la arrayList la ArrayList ();
        arrayList.add ( "abc");
        arrayList.add (100);

        for (int i = 0; I <arrayList.size (); i ++) {
            cadena Item = (String) arrayList.get (I);
            Log.d ( "prueba genérica", "artículo =" artículo +);
        }

    Los resultados operativos se colgará, e informó: java.lang.ClassCastException: java.lang.Integer pueda emitir no java.lang.String
    arrayList que no prevé para los genéricos, se puede añadir diferentes tipos de elementos en ella! Cuando la oportunidad y se encontró tipo int cadena que escribir cuando el informe incorrecto!
    
    Si empezamos ejemplo genérico ordenado:
        List <String> = arrayList nueva new ArrayList <String> ();
    a continuación, haciendo arrayList.add (100), cuando el programa de error durante la compilación!
    Genéricos de tres maneras diferentes,
    a saber:
    clases genéricas:
    interfaz genérica
    método genérico
    también genérico superior e inferior

Después de esperar complementaria ..........

Publicado 13 artículos originales · ganado elogios 1 · vistas 1496

Supongo que te gusta

Origin blog.csdn.net/gaoyang426/article/details/104977811
Recomendado
Clasificación