Map集合及与Collection的区别、HashMap和HashTable的区别、Collections、
特点:将键映射到值的对象,一个映射不能包含重复的键,每个键最多只能映射到一个值。
Map集合和Collection集合的区别
Map集合:成对出现 (情侣) 双列集合
Collection:单个出现 (单身狗) 所以功能才这么多 单列集合
Key:键 Value:值
功能
1、添加功能
V put(K key,V value):添加元素
如果键是第一次存储,就直接存储,返回null
如果键不是第一次存储,就用值把以前的值替换掉,返回以前的值
2、删除功能
void clear():移除所有的键值段
V remove(Object key):根据键删除键值对元素,并把值返回
3、判断功能
boolean containsKey(Object Key):判断集合是否包含指定的键
boolean containsValue(Object Value):判断集合是否包含指定的值
boolean isEmpty():判读集合是否为空
4、获取功能
Set<Map,Entry<K,V>> entrySet():返回的是键值对对象的集合
V get(Object Key):根据键获取值
Set<K> keySey():获取集合中所有键的集合
Collection<V> values():获取集合中所有值的集合
5、长度功能
int size()
Map集合的遍历
方法:
1、获取所有的键:keySet()
2、遍历键的集合,获取得到每一个键:增强for
3、根据键去找值:get()
用代码表示为:
public static void main(String[] args ) {
Map<String,String> map = new HashMap<String,String> ();
m.put(“周杰伦”,“昆凌”);
m.put(“黄晓明”,“杨颖”);
Set<String> set = map.keySet<>;
for (String s : set) {
String value = map.get(key);
System.out.println(key+"----"+value);
}
}
HashMap和HashTable的区别
HashMap:线程不安全,效率高;允许null键和null值
HashTable:线程安全,效率低;不允许null键和null值
Collections类:是针对集合操作的工具类,属于静态方法
Collection和Collections的区别:
Collection:是单列集合的顶层接口
Collections:是针对集合操作的工具类
Map集合总结:
A、Map集合的数据结构仅仅针对键有效,与值无关
B、存储的是键值对形式的元素,键唯一,可重复
集合的常见方法及遍历方式
Collection() Map()
1、添加功能 add() put
2、删除功能 remove() remove()
3、判断功能 contains() containsKey()、containsValue()
4、获取功能 iterator() KeySet()、get()、entrySet()、
5、长度功能 size() size()
6、遍历方式 增强for、迭代器 根据键找值、根据键值对对象分别找键和值
Map集合及与Collection的区别、HashMap和HashTable的区别、Collections、的更多相关文章
- HashMap和Hashtable的区别--List,Set,Map等接口是否都继承自Map接口--Collection和Collections的区别
面试题: 1.HashMap和Hashtable的区别? HashMap:线程不安全,效率高,键和值都允许null值 Hashtable:线程安全,效率低,键和值都不允许null值 ArrayList ...
- java集合框架collection(4)HashMap和Hashtable的区别
HashMap和Hashtable的区别 HashMap和Hashtable都实现了Map接口,但决定用哪一个之前先要弄清楚它们之间的分别.主要的区别有:线程安全性,同步(synchronizatio ...
- Java 集合系列 11 hashmap 和 hashtable 的区别
java 集合系列目录: Java 集合系列 01 总体框架 Java 集合系列 02 Collection架构 Java 集合系列 03 ArrayList详细介绍(源码解析)和使用示例 Java ...
- Java集合详解4:一文读懂HashMap和HashTable的区别以及常见面试题
<Java集合详解系列>是我在完成夯实Java基础篇的系列博客后准备开始写的新系列. 这些文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查 ...
- java集合框架之HashMap和Hashtable的区别
参考http://how2j.cn/k/collection/collection-hashmap-vs-hashtable/692.html#nowhere HashMap和Hashtable的区别 ...
- Java自学-集合框架 HashMap和Hashtable的区别
HashMap和Hashtable之间的区别 步骤 1 : HashMap和Hashtable的区别 HashMap和Hashtable都实现了Map接口,都是键值对保存数据的方式 区别1: Hash ...
- 一、基础篇--1.2Java集合-HashMap和HashTable的区别
HashMap和HashTable的区别 1.继承的父类不同,HashMap继承的是AbstractMap类,HashTable继承的是Dictionary类,不过都实现了Map.Clone.Seri ...
- hashMap和hashTable的区别
每日总结,每天进步一点点 hashMap和hashTable的区别 1.父类:hashMap=>AbstractMap hashTable=>Dictionary 2.性能:hashMap ...
- 面试题·HashMap和Hashtable的区别(转载再整理)
原文链接: Javarevisited 翻译: ImportNew.com- 唐小娟 译文链接: http://www.importnew.com/7010.html HashMap和Hashtabl ...
随机推荐
- 好玩的Handler
Android提供了Handler和Looper来满足线程间的通信; Handler和Activity的任务栈不同,它是先进先出原则; Handler:你可以构造Handler对象来与Looper沟通 ...
- swift-元组
元组: 将多个相同或者不同类型的值用一个小括号括起来就是一个元组.元组和结构体很像,实际上元组是复合类型.小括号内可以写任意类型,如果不定义类型,可以根据数据自动判断推算出类型 省略了类型 let p ...
- Extjs5 tree扩展----treepanel树组件
Ext.define('MyExtend.lib.TreeFilter', { filterByText: function(text) { this.f ...
- Graphviz绘制百家争鸣图
最近读易中天<先秦诸子百家>,一边读一边在纸上画出逻辑关系,图越来越复杂,趁中午休息索性就把图用Graphviz重新绘制了一下;由于Graphviz主动承担了绘图排版的职责,我只需要关注内 ...
- 原创 C++应用程序在Windows下的编译、链接:第二部分COFF/PE文件结构
2.1概述 在windows操作系统下,可执行文件的存储格式是PE格式:在Linux操作系统下,可执行文件的存储格式的WLF格式.它们都是COFF格式文件的变种,都是从COFF格式的文件演化而来的. ...
- $(window).height(),在火狐下面获取的高度并不是可视区域的高度
很简单,我发现是没有写<!DOCTYPE html>造成的,加上去就可以了
- x01.BSheepTree: 树
数据结构,无外乎三: 1. 一对一,线性表,数组是也: 2. 一对多,树,菜单是也: 3. 多对多,图,网络是也. 涉及到树,有一个平衡的问题,左旋转,右旋转,转得人晕晕乎乎.好在陈广的<数据结 ...
- spring bean的生命周期
掌握好spring bean的生命周期,对spring的扩展大有帮助. spring bean的生命周期(推荐看) spring bean的生命周期
- Lite Your Android English
https://litesuits.com/ 一些话 简约的背后,往往是复杂 还原面向对象应有的体验,让应对繁多业务所增加的,并未增加. 展开设计理念 Lite每个项目仅几十KB,这相当于你项目中 ...
- codevs 1576 最长上升子序列的线段树优化
题目:codevs 1576 最长严格上升子序列 链接:http://codevs.cn/problem/1576/ 优化的地方是 1到i-1 中最大的 f[j]值,并且A[j]<A[i] .根 ...