Java SE 048 Map Ausführliche Erklärung und zwei Implementierungsmethoden zum Durchlaufen von Map

(1) Solange ein Mensch sich selbst nicht aufgibt, wird die ganze Welt dich nicht aufgeben.
(2) Ich bin geboren, um von großem Nutzen zu sein . (3) Wenn ich
das Leiden des Lernens nicht ertragen kann, muss ich das Leiden des Lebens ertragen. Wie schmerzhaft es ist Tiefes Verständnis.
(4) Sie müssen davon profitieren, schwierige Dinge zu tun . (
5) Geist ist die wahre Klinge.
(6) Gegner zweimal zu erobern, das erste Mal im Herzen.
(7) Schreiben ist wirklich nicht einfach. Wenn Sie es mögen oder etwas für Sie haben Denken Sie daran, + folgen oder Favorit ~ zu mögen

Java SE 048 Map Ausführliche Erklärung und zwei Implementierungsmethoden zum Durchlaufen von Map

1. Karte (Mapping)

Ordnen Sie seinem Wert einen Schlüssel zu. Eine Karte darf keine doppelten Schlüssel enthalten. Jeder Schlüssel kann einem Wert zugeordnet werden, jedoch nicht mehreren Werten.

Solange es eine Karte gibt, müssen wir an ein Paar denken.
put (K-Taste, V-Wert); Ordnen Sie den angegebenen Wert dem zugeordneten Schlüssel zu

## 2. Warum unterscheiden
sich der Rückgabetyp von values () und keySet (), da der Wertesatz doppelte Werte enthalten kann, der Schlüsselsatz jedoch keine doppelten Werte enthalten kann.
Set-konformer Schlüsselsatz kann nicht wiederholt werden, und Collection-konformer Wertesatz ermöglicht doppelte Werte.

package com.javase.map;

import java.util.HashMap;

public class MapTest2 {
    
    
	@SuppressWarnings("unchecked")
	public static void main(String[] args) {
    
    
		HashMap map = new HashMap();
		
		String str = "zhangsan";
		map.put("a", str);
		map.put("b", str);
		
		System.out.println(map);
	}
}

Die keySet () -Methode von Map gibt eine Sammlung von Schlüsseln zurück, da die Schlüssel von Map nicht wiederholt werden können. Daher ist der Rückgabetyp der keySet () -Methode Set und der Wert von Map kann wiederholt werden, sodass der Rückgabetyp der values ​​() -Methode Collection ist Kann wiederholte Elemente aufnehmen.

3. Durchlaufen Sie die Kartensammlung

package com.javase.map;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;

public class MapTest3 {
    
    
	@SuppressWarnings("unchecked")
	public static void main(String[] args) {
    
    
		HashMap map = new HashMap();
		map.put("a", "aa");
		map.put("b", "bb");
		map.put("c", "cc");
		map.put("d", "dd");
		map.put("e", "ee");
		map.put("f", "ff");
		
		Set set = map.keySet();
		for(Iterator iter = set.iterator(); iter.hasNext();){
    
    
			String key = (String)iter.next();
			String value =(String)map.get(key);
			System.out.println(key+"="+value);
		}
	}
}

4. Übergeben Sie die Parameter über die Befehlszeile und zählen Sie, wie oft derselbe Parameter angezeigt wird

package com.javase.map;

import java.util.HashMap;
import java.util.Iterator;

public class MapTest4 {
    
    
	@SuppressWarnings("unchecked")
	public static void main(String[] args) {
    
    
		HashMap map = new HashMap();
		
		for(int i = 0; i < args.length; i++){
    
    
			//如果不存在这个元素就返回null,则此时可将这个值放进map进行记录,不为null表明以前它已经存在过了
			//存在则可以将其取出来,然后再放回去即可
			if(map.get(args[i])==null){
    
    
				map.put(args[i], new Integer(1));
			}else{
    
    
				Integer in= (Integer)map.get(args[i]);
				in = new Integer(in.intValue()+1);
				map.put(args[i], in);
			}
		}
		
		for(Iterator iter = map.keySet().iterator();iter.hasNext();){
    
    
			String key = (String)iter.next();
			Integer value = (Integer)map.get(key);
			System.out.println(key+"出现"+value+"次");
		}
	}
}

Ich denke du magst

Origin blog.csdn.net/xiogjie_67/article/details/108540813
Empfohlen
Rangfolge