Map
Map接口中定义了很多方法,常用的如下:
- public V put(K key, V value): 把指定的键与指定的值添加到Map集合中。//增也是它,改也是它,键唯一,值覆盖,有覆盖就返回被覆盖的旧的值,没有覆盖返回null表示
- public V remove(Object key): 把指定的键 所对应的键值对元素 在Map集合中删除,返回被删除元素的值。
- public V get(Object key) 根据指定的键,在Map集合中获取对应的值。如果没有键,没有值,绑定,返回null表示
- public Set keySet(): 获取Map集合中所有的键,存储到Set集合中。即键的集合
- public Set<Map.Entry<K,V>> entrySet(): 获取到Map集合中所有的键值对对象的集合(Set集合)。即键值对类的对象的集合,存的是每一个键值对对象,模拟键值对,得到每一个键和每一个值的方法,键值对类里面写了,模拟键值对,由键和值组成,自然可以得到键和得到值的方法
public class doudizhu {
public static void main(String[] args) {
HashMap<Integer,String> hm = new HashMap<>();
int count = 0 ;
hm.put(count++,"大王");
hm.put(count++,"小王");
ArrayList<String> color = new ArrayList();
ArrayList<String> num = new ArrayList();
Collections.addAll(color,"♠", "♥", "♣", "♦");
Collections.addAll(num,"2", "A", "K", "Q", "J", "10", "9", "8", "7", "6", "5", "4", "3");
for (String n : num) {
for (String c : color) {
hm.put(count++,c+n);//1
}
}
System.out.println(hm);
Set<Integer> keySet = hm.keySet();
ArrayList<Integer> numberlist = new ArrayList();
numberlist.addAll(keySet);
Collections.shuffle(numberlist);
ArrayList list01 = new ArrayList();
ArrayList list02 = new ArrayList();
ArrayList list03 = new ArrayList();
ArrayList dipai = new ArrayList();
for (int i = 0; i <numberlist.size() ; i++) {
Integer pernum = numberlist.get(i);
if(i>=51){
dipai.add(pernum);
}else {
if (i%3==0){
list01.add(pernum);
}
else if (i%3==1){
list02.add(pernum);
}else if (i%3==2){
list03.add(pernum);
}
}
}
Collections.sort(list01);
Collections.sort(list02);
Collections.sort(list03);
Collections.sort(dipai);
ArrayList<String> player01= new ArrayList<>();
ArrayList<String> player02= new ArrayList<>();
ArrayList<String> player03= new ArrayList<>();
ArrayList<String> dipai01= new ArrayList<>();
for (Object s : list01) {
player01.add(hm.get(s));
}for (Object s : list02) {
player02.add(hm.get(s));
}for (Object s : list03) {
player03.add(hm.get(s));
}for (Object s : dipai) {
dipai01.add(hm.get(s));
}
System.out.println(player01);
System.out.println(player02);
System.out.println(player03);
System.out.println(dipai01);
}
}