📄 fig10-17.java
字号:
import java.io.*;
import java.util.HashMap;
class Person {
private String name;
public int age;
private int hashcode = 0;
public Person(String n, int a) {
name = n; age = a;
for (int i = 0; i < name.length(); i++)
hashcode += name.charAt(i);
}
public Person() {
this("",0);
}
public boolean equals(Object p) {
return name.equals(((Person)p).name);
}
public int hashCode() {
return hashcode;
}
public String toString() {
return "(" + name + "," + age + ")";
}
}
class TestHashMap {
public static void main(String[] a) {
HashMap cities = new HashMap();
cities.put(new Person("Gregg",25),"Pittsburgh");
cities.put(new Person("Ann",30),"Boston");
cities.put(new Person("Bill",20),"Belmont");
System.out.println(cities);
// {(Ann,30)=Boston, (Gregg,25)=Pittsburgh, (Bill,20)=Belmont}
cities.put(new Person("Gregg",30),"Austin");
System.out.println(cities);
// {(Ann,30)=Boston, (Gregg,25)=Austin, (Bill,20)=Belmont}
System.out.println(cities.containsKey(new Person("Ann",30)));// true
System.out.println(cities.containsValue("Boston")); // true
System.out.println(cities.size()); // 3
System.out.println(cities.get(new Person("Ann",30))); // Boston
System.out.println(cities.entrySet());
// [(Ann,30)=Boston, (Gregg,25)=Austin, (Bill,20)=Belmont]
System.out.println(cities.values());
// [Boston, Austin, Belmont]
System.out.println(cities.keySet());
// [(Ann,30), (Gregg,25), (Bill,20)]
System.out.println(cities.remove(new Person("Bill",20))); // Belmont
System.out.println(cities);
// [(Ann,30), (Gregg,25)]
cities.put(null,"Nashville");
cities.put(new Person("Kay",44),null);
System.out.println(cities);
// [(Ann,30)=Boston, (Gregg,25)=Austin, (Kay,44)=null, null=Nashville]
System.out.println(cities.get(new Person("Kay",44))); // null
System.out.println(cities.get(new Person("Stan",55))); // null
System.out.println(cities.containsKey(new Person("Kay",44))); // true
System.out.println(cities.containsKey(new Person("Stan",55))); // false
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -