Le code source de l'entrée est utilisé à de nombreux endroits et implémente l'interface Map.Entry

  Par exemple, l'implémentation sous-jacente de TreeMap est basée sur des arbres rouge-noir, où chaque nœud est Entrée <K, V>:

classe finale statique Entrée <K, V> implémente Map.Entry <K, V> { 
    // clé, val est la 
    clé K stockée dans les données d'origine ; 
    valeur V; 
    // L'enfant gauche du nœud est défini 
    Entrée <K, V> gauche ; 
    // L'enfant droit du nœud est défini 
    Entrée <K, V> droite; 
    // Par ce nœud, vous pouvez revenir en arrière et trouver votre père 
    Entrée <K, V> parent; 
    // Le nœud noir par défaut, réglable 
    couleur booléenne = NOIR; 

    / ** 
     * Constructeur 
     * / 
    Entrée (clé K, valeur V, entrée <K, V> parent) { 
        this.key = clé; 
        this.value = valeur; 
        this.parent = parent; 
    } 

    / ** 
     * Récupère la valeur de clé du nœud 
     * / 
    public K getKey () {clé de retour;} 

    / **
     * Récupère la valeur du nœud 
        int keyHash = (key == null? 0: key.hashCode () );
     * / 
    public V getValue () {valeur de retour;} 

    / ** 
     * 用 新 值 替换 当前 值 , 并 返回 当前 值
     * / 
    public V setValue (valeur V) { 
        V oldValue = this.value; 
        this.value = valeur; 
        return oldValue; 
    } 

    public boolean equals (Object o) { 
        if (! (o instanceof Map.Entry)) 
            return false; 
        Map.Entry <?,?> E = (Map.Entry <?,?>) O; 
        return valEquals (key, e.getKey ()) && valEquals (value, e.getValue ()); 
    } 

    public int hashCode () { 
        int valueHash = (value == null? 0: value.hashCode ()); 
        return keyHash ^ valueHash; 
    }

    public String toString () { 
        return key + "=" + value; 
    } 
}

  

Je suppose que tu aimes

Origine www.cnblogs.com/dashenaichicha/p/12726659.html
conseillé
Classement