/ / Wie kann ich in der Liste alle Schlüssel ausdrucken, die derzeit in meiner HashMap gespeichert sind, und die Personen zu ihren Adressen hinzufügen [geschlossen] - Java, Hashmap, Keyset

Wie liste ich alle Schlüssel auf, die zurzeit in meinen HashMap Mapping-Personen gespeichert sind, auf ihre Adressen [geschlossen] - java, hashmap, keyset

Wie kann ich meine Liste ausdrucken, um alle Schlüssel auszudrucken, die aktuell in meiner HashMap-Person gespeichert sind, um Personen an ihre Adressen zu senden.

import java.util.HashMap;

public class MapTester
{
private HashMap<String, String> addressBook = new HashMap<String, String> ();
private String name;
private String address;

public MapTester()
{
addressBook.put("Zoe", "9 Applebury Street");
addressBook.put("Mum", "72 Cherry Tree Drive");
addressBook.put("Dad", "6 Windsor Avenue");
}


/**
* Input the name and address
*/
public void enterContact(String name, String address)
{
addressBook.put(name, address);
}

/**
* Lookup a contact"s name from their address.
*/
public String lookupNumber(String name)
{
name = name;
return addressBook.get(name);
}

public void keySet()
{
for (String contacts : addressBook)
{
System.out.println(contacts);
}
}
}

Dies ist, was ich bisher versucht habe und weiß, dass ich die keySet-Methode verwenden muss, aber ich bin nicht sicher, wie ich sie anwenden soll.

Antworten:

1 für die Antwort № 1

Sie können eines der folgenden verwenden
1) Verwenden Sie die Schlüsselsatz

    Set keys = addressBook.keySet();
for (Iterator i = keys.iterator(); i.hasNext();) {
String key = (String) i.next();
String value = (String) addressBook.get(key);
System.out.println("key=" + key + ", value=" + value);
}

oder benutze die Hashmap Werte Diese Methode gibt eine Sammlungsansicht der in der Karte enthaltenen Werte zurück

    for (String value : addressBook.values()) {
System.out.println("value=" + value);
}

oder drucken Sie direkt die zurückgegebene Sammlung aus Werte verwenden Arrays

    System.out.println("addressBook.values =" + Arrays.asList(addressBook.values()));

2 für die Antwort № 2
for (Map.Entry<String, String> entry : addressBook .entrySet()) {
System.out.println("key=" + entry.getKey() + ", value=" + entry.getValue());
}

oder

Set<String> keys = addressBook.keySet(); // for key set
Iterator iterator=keys.iterator();
while(iterator.hasNext()) {
System.out.println(iterator.next());
}

1 für die Antwort № 3

Eine Hashmap hat eine Methode keySet was einen Satz Schlüssel zurückgibt

http://docs.oracle.com/javase/7/docs/api/java/util/HashMap.html#keySet()

In Ihrem Fall

Set<String> keys = addressBook.keySet();

for (String key : keys) {
System.out.println (key);
}

0 für die Antwort № 4

Sie müssen alle Schlüssel Ihres Schlüssels durchlaufen phoneBook und erhalten ihre entsprechende Adresse von der addressBook.

for (String key : phoneBook.keySet()) {
System.out.println("name=" + key + ", address=" + addressBook.get(key));
}