package com.guigu.hashMapTest;
import org.junit.Test;
import org.omg.CORBA.PUBLIC_MEMBER;
import java.util.*;
public class HashMapTest01 {
//.班上80位同学,现在准备秋游,班长提供了四个景点(A,B, C, D),每个学生只能选择去一个景点,请统计去哪个景点的人数最多,并且去了多少人?
@Test
public void Test(){
String[] strings = {"A", "B", "C", "D"};
ArrayList<String> name = new ArrayList<>();
Random random = new Random();
for (int i = 0; i < 80; i++) {
int i1 = random.nextInt(strings.length);
name.add(strings[i1]);
}
System.out.println(name);
//用hashmap统计选举票数
HashMap<String, Integer> map = new HashMap<>();
int max=0;
for (String s : name) {
if (map.containsKey(s)) {
//获取景点票数
Integer count = map.get(s);
count++;
map.put(s,count);
}else {
map.put(s,1);
}
}
System.out.println(map);
for (Map.Entry<String, Integer> entry : map.entrySet()) {
if (entry.getValue()>max){
max=entry.getValue();
}
}
for (Map.Entry<String, Integer> entry : map.entrySet()) {
if (entry.getValue()==max){
System.out.println(entry.getValue());
}
}
}
@Test
public void Test01(){
Set<String> set = new HashSet<>();
set.add("李二");
set.add("李三");
set.add("李四");
set.add("李五");
set.add("李六");
set.add("李七");
for (String s : set) {
System.out.println(s);
}
System.out.println("=====================================");
//迭代遍历
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
}
@Test
public void Test02(){
//创建集合
HashSet<StudentEnttiy> stu = new HashSet<>();
stu.add(new StudentEnttiy("李三",18));
stu.add(new StudentEnttiy("李二",12));
stu.add(new StudentEnttiy("李三",14));
stu.add(new StudentEnttiy("李四",15));
stu.add(new StudentEnttiy("李五",18));
for (StudentEnttiy studentEnttiy : stu) {
System.out.println(studentEnttiy);
}
System.out.println("==========================================");
Iterator<StudentEnttiy> iterator = stu.iterator();
while (iterator.hasNext()){
StudentEnttiy next = iterator.next();
System.out.println(next.getName()+" "+next.getAge());
}
}
@Test
public void Test03(){
HashMap<Integer, String> map = new HashMap<>();
map.put(1,"li");
map.put(2,"lds");
map.put(3,"sd");
map.put(4,"df");
map.put(5,"lef");
map.put(6,"se");
System.out.println(map.get(5));
map.remove(5);
System.out.println(map);
}
@Test
public void Test04(){
HashMap<String, String> map = new HashMap<>();
Set<String> set = map.keySet();
map.put("天龙八部","倚天屠龙");
map.put("上官疯子","宏茂莎霞");
map.put("辉煌龙儿","纱帽滞胀");
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()){
String next = iterator.next();
System.out.println(map.get(next));
}
for (String s : set) {
System.out.println(map.get(s));
}
}
/*
* *需求:
*假设HashMap集合的元素是ArrayList。有3个。
*每一个ArrayList集合的值是字符串。
*元素我已经完成,请遍历。
*结果:
* 三国演义
* 吕布
* 周瑜
* 笑傲江湖
* 令狐冲
* 林平之
* 神雕侠侣
* 郭靖
* 杨过 */
@Test
public void Test05(){
HashMap<String, ArrayList<String>> hashMap = new HashMap<>();
ArrayList<String> list = new ArrayList<>();
list.add("吕布");
list.add("周瑜");
hashMap.put("三国演义",list);
ArrayList<String> list2 = new ArrayList<>();
list2.add("令狐冲");
list2.add("林智屏");
hashMap.put("笑傲江湖",list2);
ArrayList<String> list3 = new ArrayList<>();
list3.add("郭靖");
list3.add("杨过");
hashMap.put("神雕侠侣",list3);
for (Map.Entry<String, ArrayList<String>> listEntry : hashMap.entrySet()) {
System.out.println(listEntry);
}
System.out.println("=====================================================");
Set<String> set = hashMap.keySet();
for (String s : set) {
for (String s1 : hashMap.get(s)) {
System.out.println(s1);
}
}
}
/*/*
ArrayList集合嵌套HashMap集合并遍历。
需求:
假设ArrayList集合的元素是HashMap。有3个。
每一个HashMap集合的键和值都是字符串。
元素我已经完成,请遍历。
结果:
周瑜---小乔
吕布---貂蝉
郭靖---黄蓉
杨过---小龙女
令狐冲---任盈盈
林平之---岳灵珊
*/
@Test
public void Test06(){
ArrayList<HashMap<String,String>> list = new ArrayList<>();
HashMap<String,String> map = new HashMap<>();
map.put("力宏","大胖");
map.put("帅帅","帅哥");
list.add(map);
HashMap<String,String> map1 = new HashMap<>();
map1.put("黎明","二胖");
map1.put("黎黑","三胖");
list.add(map1);
HashMap<String,String> map2 = new HashMap<>();
map2.put("红","二胖");
map2.put("白","三胖");
list.add(map2);
for (HashMap<String, String> hashMap : list) {
for (Map.Entry<String, String> entry : hashMap.entrySet()) {
System.out.println(entry);
}
}
}
}
hashmap练习案例
最新推荐文章于 2023-09-20 10:59:29 发布