HashMap与LinkedHashMap类型集合
对于HashMap特点:
[*]特点无序,没索引,不重复
[*]包管键的唯一
类似于Map类型的集合,都可以在书名号中添加一个类名和一个数据类型来添加元素,也用“put”,也可以遍历集合元素
Set<Student> keys = hm.keySet();//获取键值
for (Student k : keys) {
String key = hm.get(k);//获取添加的地址
System.out.println(key+"--"+k);
}假如计划用于统计方面,此次以随机数据为例。
首先设置一个数组来存放选项,让这些选项充当键
// 创建一个数组用来存储可能的键
String[] arr = {"A","B","C","D"};通过“Random”下令创建一个随机变量
Random r = new Random();// 产生随机数据的对象然后设置一个接口,进入循环
ArrayList<String> list = new ArrayList<>();
Random r = new Random();// 产生随机数据的对象
for (int i = 0; i < 80; i++) {// 随机生成八十次
int index = r.nextInt(arr.length);// 生成的数字最大不超过数组“arr”的长度
list.add(arr); // 将生成的索引对应的元素添加到列表中
}此处创建了一个名叫“list”的接口,并将随机生成的数据导入集合中,此时用“HashMap”来创建一个集合
HashMap<String, Integer> hm = new HashMap<>();然后用增强“for”循环的方法来遍历集合。
"集合名.for"确定后自动生成,然后
for (String name : list) {
// 首先判断该集合中是否存在该元素
if (hm.containsKey(name)) {
// 当存在时,获取已经有的票数并增加1
int num1 = hm.get(name);
hm.put(name, num1 + 1); //存入集合并添加数值
} else {
hm.put(name, 1); // 第一次出现,设置值为1
}
}
//打印HashMap的内容验证
System.out.println(hm);此时假如想要求谁人选项的数最大,则
//求max
int max = 0;
Set<Map.Entry<String,Integer>> entries = hm.entrySet();
//将票数传递给一个集合
for (Map.Entry<String, Integer> entry : entries) {
int count = entry.getValue(); //获取集合中的数值
if(count >max){ //通过比较选出最大值
max = count;
}
}
System.out.println(max);对于"LinedHashMap"
特点:
[*]存取有序,没索引,不重复
[*]包管键的唯一,也会覆盖同一键的数据,后盖前
其他与HashMap类型相同。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]