1、集合map常用的三个实现子类:hashTable,hashMap,TreeMap。
a):hashTable类底层数据结构是hash表,线程同步,不可以使用null键null值;
b):hashMap类的底层数据结构也是哈希表,线程不同步,可以使用null键null值;
c):TreeMap类的底层数据结构是二叉排序树,线程不同步,可以根据键值排序。
2、set集合在底层使用了很多的map集合。
3、在使用HashMap类中的put方法时,当出现put方法的第一个参数(键)与map集合元素中已有的键相同时,put方法第二个参数(值)会替换掉集合元素相应键的值,并把该值返回,示例如下:
复制代码
1
2
3Map<String,String> map = new HashMap<String,String>(); System.out.println(map.put("java01","a"));//打印结果为:null System.out.println(map.put("java01","c"));//打印结果为:a
4、使用Map集合中的keySet方法,取出所有的键值。首先调用keySet方法,然后再使用Set集合的迭代器方式获取键,之后再调用map集合的get方法获取值,之后进行遍历,代码如下:
复制代码
5、使用map集合中的entrySet方法获取键和值。示例代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13Map<String,String> map = new HashMap<String,String>(); map.put("java01","a"); map.put("java02","b"); map.put("java03","c"); map.put("java04","d"); Set<String> set = map.keySet(); Iterator<String> it = set.iterator(); while( it.hasNext() ) { String key = it.next(); System.out.println("key = "+key+",value = "+map.get(key)); }
复制代码
1
2
3
4
5
6
7
8
9
10
11
12Map<String,String> map = new HashMap<String,String>(); map.put("java01","a"); map.put("java02","b"); map.put("java03","c"); map.put("java04","d"); Set<Map.Entry<String, String>> set = map.entrySet(); Iterator<Map.Entry<String, String>> it = set.iterator(); while( it.hasNext() ) { Map.Entry<String, String> me = it.next(); System.out.println("key = "+me.getKey()+",value = "+me.getValue()); }
6、返回某字符串中的字符出现次数:
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23//求某一字符串中各字符出现的次数 String str = "dfhiofnlkdfoifnz.fnaj"; HashMap<Character,Integer> hs = new HashMap<Character,Integer>(); for( int i = 0; i < str.length(); i++ ) { char ch = str.charAt(i); if( hs.get(ch) == null ) hs.put(ch, 1); else { int temp = hs.get(ch); hs.put(ch, temp+1); } } Set<Character> set = hs.keySet(); Iterator<Character> it = set.iterator(); while( it.hasNext() ) { Character ch = it.next(); System.out.println(ch+" "+hs.get(ch)); } }
最后
以上就是繁荣凉面最近收集整理的关于黑马程序员---java学习笔记之map集合的全部内容,更多相关黑马程序员---java学习笔记之map集合内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复