Hash表 也叫做散列表HashMap<k,v> 键是唯一的输出最后一个
Java的Hash表可以以任何实现了hash()函数的类的对象做值来存放对象。
传统意义上的Hash表,是能以int做值,将数据存放起来的数据结构。Java的Hash表可以以任何实现了hash()函数的类的对象做值来存放对象。
Hash表是非常有用的数据结构,熟悉它,充分使用它,往往能起到事半功倍的效果。
HashMap<K,V>
K就是key代表了键,在hash表中,key的值唯一。
V就是value代表与key对应的值。
代码源自翁恺老师在慕课上的代码
import java.util.HashMap;
import java.util.Scanner;
public class Coin{
private HashMap<Integer,String> coinnames= new HashMap<Integer,String>();
//integer在这就是int的作用,但不可写作int
public Coin() {
coinnames.put(1,"penny");
coinnames.put(10,"dime");
coinnames.put(25,"quarter");
coinnames.put(50,"half-dollar");
coinnames.put(50,"五毛");
//程序绑定key=50时为五毛而不是half-dollar,因为key值唯一。
}
public String getName(int amount) {
if(coinnames.containsKey(amount))
return coinnames.get(amount);
//containsKey判断是否包含指定的键名,当get()方法的返回值为null时,可能有两种情况
//一种是在集合中没有该键对象,另一种是该键对象没有映射任何值对象,即值对象为null。
else
return "NOT FOUND";
}
public static void main(String [] args) {
Scanner in = new Scanner(System.in);
int amount = in.nextInt();
Coin coin = new Coin();
String name = coin.getName(amount);
System.out.println(name);
}
}
}