java--Map容器、泛型(Generic)

如何选择数据结构
衡量的标准是:读的速度和改的速率
(1)Array读快改慢
(2)Linked改快读慢
(3)Hash位于两者之间

一、Map接口
实现Map接口的类用来存储键值对。
Map接口的实现类有HashMap和TreeMap等
Map类中的存储键值对通过键来标识,所以键值不能重复。

//返回原来的value值
Object put(Object key, Object value)

Object get(Object key)

Object remove(Object key)
boolean containsKey(Object key)
boolean containsValue(Object value)
int size()
bolean isEmpty()
void putAll(Map t)
void clear()

Auto-boxing:自动打包
自动将基础类型转换为对象

unboxing:解包
自动将对象转换为基础类型

二、泛型
引用泛型前,装入集合的类型都被当做Object对待,从而失去自己的类型。
从集合中取出来往往需要转型,效率低,容易产生错误。

解决 方法:
在定义集合的同时定义集合对象的类型。
注:
可以在定义Collection的时候指定。
也可以在循环Iterator指定。

好处:增强程序的可读性。

使用方法就是直接在定义容器时指定容器可以装什么类型的对象;
或者定义Iterator时也是直接指定迭代器的对象类型。

List<String> list = new ArrayList<String>();
Iterator<String> i  = list.iterator();  
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,767评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,963评论 19 139
  • 一、基本数据类型 注释 单行注释:// 区域注释:/* */ 文档注释:/** */ 数值 对于byte类型而言...
    龙猫小爷阅读 4,289评论 0 16
  • java笔记第一天 == 和 equals ==比较的比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量...
    jmychou阅读 1,518评论 0 3
  • https://draveness.me/kvocontroller
    扛支枪阅读 146评论 0 0