java 基础 --Collection(Map)
Map是不是集合?哈哈哈
java编程思想》的第11章,第216页,正数第13行,中原文:“……其中基本的类型是LIst、Set、Queue和Map。这些对象类型也称为集合类,
但由于Java类库中使用了Collection这个名字来指代该类库的一个特殊子集,所以我使用了范围更广的术语‘容器’称呼它们……”
所以,应该明确说明和指出集合是指容器(java编程思想》中的'集合类'/集合框架) 还是指Collection接口下的实现类。再回答这个问题 打印数组:System.out.println(Arrays.toString(arr)); map集合特点:
将键映射到值的对象。一个映射不能包含重复的键,每个键最多只能映射到一个值。
map和collection的区别:
Map集合存储元素是成对出现的,Map集合的键是唯一的,值是可重复的。
Collection存储集合是单独出现的,Collection的子接口系Set是唯一的,List是可重复的。
注意:
Map集合的数据结构只针对键有效,和值无关
Collection集合的数据结构是针对元素有效
HashMap:
是基于Hash表的map接口实现。
Hash表的作用是用来保证键的唯一性
LinkedHashMap:
是map接口Hash表和链表的实现,具有可预知的迭代顺序。
Hash表保证唯一性,链表保证有序(存储和取出的顺序一致,而不是排序)
TreeMap:基于红黑书的map接口的实现 Map<Integer,String> map = new HashMap<Integer,String>();
map.put(007,"Enumeration");// 0开头表示八进制
map.put(008,"Monitor")//报错,0开头表示八进制,八进制只能由0-7组成 HashMap/Hashtable区别:
1,HashMap的key/value可以为null(Hashtable的key和value都不能为null)
2,HashMap是非线程安全的,效率高
3,HashMap实现Map接口,而Hashtable继承Directory类 Collections:针对集合进行操作的工具类,都是静态方法。
Collection/Collections区别:
Collection:单列集合的顶层接口,有子接口List和Set
Collections:针对集合进行操作的工具类,有对集合进行排序和二分查找的方法。
Collections.sort(list)
Collections.sort(list,new Comparator(){})
java 基础 --Collection(Map)的更多相关文章
- Java基础-Collection子接口之Set接口
Java基础-Collection子接口之Set接口 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 学习Collection接口时,记得Collection中可以存放重复元素,也可 ...
- Java基础-Collection子接口之List接口
Java基础-Collection子接口之List接口 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们掌握了Collection接口的使用后,再来看看Collection接口中 ...
- Java基础关于Map(字典)的方法使用
Java基础关于Map(字典)的方法使用 java中一般用map与hashmap来创建一个key-value对象 使用前提是要导入方法包: import java.util.HashMap: impo ...
- 黑马程序员——JAVA基础之Map集合
------- android培训.java培训.期待与您交流! ---------- Map集合: 该集合存储键值对.一对一对往里存.而且要保证键的唯一性. 和Set很像,其实Set底层就是使用了M ...
- Java基础 -- Collection和Iterator接口的实现
Collection是描述所有序列容器(集合)共性的根接口,它可能被认为是一个“附属接口”,即因为要表示其他若干个接口的共性而出现的接口.另外,java.util.AbstractCollection ...
- Java基础——collection接口
一.Collection接口的定义 public interfaceCollection<E>extends iterable<E> 从接口的定义中可以发现,此接口使用了泛型 ...
- JAVA基础之Map接口
个人理解: 个人感觉Map接口以后会经常用到,可以很清晰地查找某个对象,要熟悉其四种遍历方法.特别注意其键值对的键不能是重复的,有想定义有序存取的话,可以使用LinkedHashMap集合.不过定义自 ...
- Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector
Collection的笔记: /**存储对象考虑使用: * 1.数组, ①一旦创建,其长度不可变!② 长度难于应对实际情况 * 2.Java集合, ①Collection集合: 1.set: 元素无序 ...
- Java基础教程——Map
Map 返回类型 方法 描述 V get(Object key) 根据key取得value V put(Obejct k,Object v) 向Map中加入(替换)元素,返回之前的Value:之前没有 ...
随机推荐
- golang基础--method方法
Go没有类似python语言中类class的概念,但依旧有method 类型方法定义格式如下 func (a mytype) method_name(x type)(y type){ return y ...
- 20155239《Java程序设计》实验二(面向对象程序设计)实验报告
实验内容 初步掌握单元测试和TDD 2.理解并掌握面向对象三要素:封装.继承.多态 3.初步掌握UML建模 4.熟悉S.O.L.I.D原则 5.了解设计模式 实验步骤 单元测试 1.三种代码: 伪代码 ...
- P,NP,NPC的通俗解释
这或许是众多OIer最大的误区之一. 你会经常看到网上出现“这怎么做,这不是NP问题吗”.“这个只有搜了,这已经被证明是NP问题 了”之类的话.你要知道,大多数人此时所说的NP问题其实都是指的N ...
- Mac 用Ctr+C复制,Ctr+V 粘贴
用习惯Windows的用户,进入Mac,不习惯快捷方式. 用下面的方法,可以返回windows 习惯. 1.进入系统偏好设置->键盘->修饰键 2.Control 选择 Command,C ...
- GDAL中通过GDALDriver类的Create函数实现图像的保存
GDAL中除了读取各种类型的图像外,也可以实现对各种图像的保存操作,具体实现测试代码如下: int test_gadl_GDALDataset_write() { const char* image_ ...
- 【LG3703】[SDOI2017]树点涂色
[LG3703][SDOI2017]树点涂色 题面 洛谷 题解 更博辣,更博辣!!! 猪年的第一篇博客 一次只能染根到\(x\),且染的颜色未出现过 这句话是我们解题的关键. 设\(x\)到根的颜色数 ...
- Linux系统基础网络配置老鸟精华篇
对于linux高手看似简单的网络配置问题,也许要说出所以然来也并不轻松,因此仍然有太多的初学者徘徊在门外就不奇怪了,这里,老男孩老师花了一些时间总结了这个文档小结,也还不够完善,欢迎大家补充,交流.谢 ...
- 同一个电脑配置两个Git问题
拿到公司电脑后,正常配置gitlab,以及设置邮箱等等,可以使用公司邮箱,以及一系列设置 git config --global user.name "userName" git ...
- [转]RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第一篇【安装】
前言:关于RobotFrameWork+APPIUM实现对安卓APK的自动化测试的文章都是取自于乐于分享知识于网络的好心人们,所以我也希望我的知识可以分享给大家. 首先我们先罗列一下我们要安装的软件 ...
- python爬虫之requests库
在python爬虫中,要想获取url的原网页,就要用到众所周知的强大好用的requests库,在2018年python文档年度总结中,requests库使用率排行第一,接下来就开始简单的使用reque ...