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)的更多相关文章

  1. Java基础-Collection子接口之Set接口

    Java基础-Collection子接口之Set接口 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 学习Collection接口时,记得Collection中可以存放重复元素,也可 ...

  2. Java基础-Collection子接口之List接口

    Java基础-Collection子接口之List接口 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们掌握了Collection接口的使用后,再来看看Collection接口中 ...

  3. Java基础关于Map(字典)的方法使用

    Java基础关于Map(字典)的方法使用 java中一般用map与hashmap来创建一个key-value对象 使用前提是要导入方法包: import java.util.HashMap: impo ...

  4. 黑马程序员——JAVA基础之Map集合

    ------- android培训.java培训.期待与您交流! ---------- Map集合: 该集合存储键值对.一对一对往里存.而且要保证键的唯一性. 和Set很像,其实Set底层就是使用了M ...

  5. Java基础 -- Collection和Iterator接口的实现

    Collection是描述所有序列容器(集合)共性的根接口,它可能被认为是一个“附属接口”,即因为要表示其他若干个接口的共性而出现的接口.另外,java.util.AbstractCollection ...

  6. Java基础——collection接口

    一.Collection接口的定义 public interfaceCollection<E>extends iterable<E>  从接口的定义中可以发现,此接口使用了泛型 ...

  7. JAVA基础之Map接口

    个人理解: 个人感觉Map接口以后会经常用到,可以很清晰地查找某个对象,要熟悉其四种遍历方法.特别注意其键值对的键不能是重复的,有想定义有序存取的话,可以使用LinkedHashMap集合.不过定义自 ...

  8. Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector

    Collection的笔记: /**存储对象考虑使用: * 1.数组, ①一旦创建,其长度不可变!② 长度难于应对实际情况 * 2.Java集合, ①Collection集合: 1.set: 元素无序 ...

  9. Java基础教程——Map

    Map 返回类型 方法 描述 V get(Object key) 根据key取得value V put(Obejct k,Object v) 向Map中加入(替换)元素,返回之前的Value:之前没有 ...

随机推荐

  1. sqlserver之group by 与over函数

    group by 函数主要用来对数据进行分组,over()函数则是一个“开窗函数”,它更多的是与聚合函数如:sum().max().min().avg().count()等函数以及排名函数如:row_ ...

  2. Redis安装——在CentOS7下的安装

    参考自:https://linux.cn/article-6719-1.html 一.安装 首先通过xshell5先登陆来到字符界面(xshell通过SSH连接请参见之前随笔) 先下载redis,这里 ...

  3. #《JAVA程序设计》 20155214 实验五 网络编程与安全

    <JAVA程序设计> 20155214 实验五 网络编程与安全 实验内容 掌握Socket程序的编写: 掌握密码技术的使用: 设计安全传输系统. 实验要求 要求一 结对实现中缀表达式转后缀 ...

  4. # 20155337 2016-2017-2 《Java程序设计》第九周学习总结

    20155337 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 JDBC(Java DataBase Connectivity)即java数据库连 ...

  5. 20155339《java程序设计》第十二周课堂实践总结

    Arrays和String单元测试 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt split Arrays类 s ...

  6. 带箭头的输入框(div+CSS设置滚动条)

    div.textarea等,都可是设置有滚动条: y轴滚动条:overflow-Y:scroll x轴滚动条:overflow-X:scroll <textarea class="ms ...

  7. zabbix最新版3.4搭建(根据官方文档适当修改)

    操作系统:CentOS Linux release 7.4.1708 (Core) 1.安装apache 1.1 安装apache yum install httpd httpd-devel 1.2 ...

  8. day 11 名片管理系统

    1 思路 #名片1 名片2 {"name":"alex","age":18,"QQ":12123} {"nam ...

  9. 【AHOI2013】差异

    题面 题解 $ \because \sum_{1 \leq i < j \leq n} i + j = \frac{n(n-1)(n+1)}2 $ 所以只需求$\sum lcp(i,j)$即可. ...

  10. 八月暑期福利,10本Python热门书籍免费送!

    八月第一周,网易云社区联合博文视点为大家带来Python专场送书福利,10本关于Python的书籍内容涉及Python入门.绝技.开发.数据分析.深度学习.量化投资等.以下为书籍简介,送书福利请见文末 ...