一、Java Collections框架是什么?

Java Collections 框架中包括了大量集合接口以及这些接口的实现类和操作它们的算法(如:排序、查找、反转、替换、复制、取最小元素、取最大元素)。

主要提供了List、Queue、Set、Stack、Map等数据结构。当中List、Queue、Set、Stack都是继承自Collection接口.

  • Set表示集合。

    主要特点。集合中元素唯一。

    该接口有两个实现类:HashSet和TreeSet。当中TreeSet实现了SortedSet接口,因此TreeSet容器中的元素是有序的。

  • List是有序的Collection。它按对象进入的顺序保存对象,所以它能对列表中的每一个元素的插入和删除位置进行精确的控制。

    同一时候,它能够保存反复的对象。LinkedList、ArrayList、Vector都实现了List接口。

  • Map提供了一个键映射到值的数据结构。它能保存Key-value对。可是Key是唯一的。该接口的实现类有:HashMap、TreeMap、LinkedHashMap、WeakHashMap和IdentityHashMap。

二、什么是迭代器?

即Iterator,它是一个对象。能够遍历并选择序列中的对象。注意Iterator在遍历对象的过程中,假设对容器进行添加或删除操作,就会改变容器中对象的数量,从而导致抛出异常。

ListIerator继承自Iterator。专门针对List,能够从两个方向来遍历List,同一时候支持元素的改动。

三、Collection和Collections有什么差别?

Collection是一个集合接口。


Collections是针对集合类的一个包装类,它提供一系列静态方法以实现对各种集合的搜索、排序、线程安全化等操作。当中大多数方法是用来处理线性表。Collections是一个工具类。不能实例化。

演示样例代码例如以下:
  1. import java.util.*;
  2.  
  3. public class Test{
  4.  
  5. public static void main(String args[]){
  6.  
  7. List<Integer> list = new LinkedList<Integer>();
  8. int array[]={1,7,2,3};
  9. for(int i=0;i<array.length;i++){
  10. list.add(new Integer(array[i]));
  11.  
  12. }
  13. Collections.sort(list);
  14.  
  15. for(int i=0;i<list.size();i++){
  16. System.out.println(list.get(i));
  17. }
  18. }
  19.  
  20. }


程序执行结果例如以下:
1
2
3
7


Java学习笔记----容器的更多相关文章

  1. 0035 Java学习笔记-注解

    什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...

  2. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

  3. Java学习笔记--Swing用户界面组件

    很多与AWT类似. 事件处理参考:Java学习笔记--AWT事件处理 1.设计模式: 模型:存储内容视图:显示内容控制器:处理用户输入· 2. 文本输入常用组件 2.1 文本域: JLabel lab ...

  4. Java学习笔记4

    Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...

  5. java学习笔记11--集合总结

    java学习笔记系列: java学习笔记10--泛型总结 java学习笔记9--内部类总结 java学习笔记8--接口总结 java学习笔记7--抽象类与抽象方法 java学习笔记6--类的继承.Ob ...

  6. 20145230《java学习笔记》第九周学习总结

    20145230 <Java程序设计>第9周学习总结 教材学习内容 JDBC JDBC简介 JDBC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据库厂商则对接口进行操作, ...

  7. java学习笔记之基础篇

    java选择语句之switch   //switch可以用于等值判断 switch (e) //int ,或则可以自动转化成int 的类型,(byte char short)枚举jdk 7中可以防止字 ...

  8. 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁

    什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...

  9. Java学习笔记(04)

    Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...

随机推荐

  1. Java 斜杠 与 反斜杠

    除号 /(数字键盘的斜杠)网址 /(数字键盘的斜杠)文件地址 \转义 \正则表达式 \

  2. javascript——js string 转 int 注意的问题——parseInt(转)

    <script>     var   str='1250' ;  alert( Number(str) );  //得到1250 alert(parseInt(str));  //得到12 ...

  3. android网络图片自动轮播 githhub地址

    https://github.com/panxw/android-image-indicator

  4. vue中去掉烦人的格式警告(eslint )

    解决办法: 一,源头上解决,下次创建项目时就不要使用eslint连接项目代码 如上图所示,就是在这一步的时候选择no: 二,在build文件夹中找到webpack.base.conf.js文件 找到右 ...

  5. Tab键可访问的下拉菜单demo

    <ul id="navigationRegion"> <li token="1" class="index_on"> ...

  6. MFC模拟鼠标点击

    MFC 工程 把以下代码放到你想要响应的函数里面就行 CPoint pt; GetCursorPos(&pt);//获取鼠标在屏幕的当前位置 SetCursorPos(100,200);//移 ...

  7. BZOJ 4823 Luogu P3756 老C的方块 染色+最小割

    题面太长了请各位自行品尝—>老C的方块 分析: 我们要解决掉所有使人弃疗的组合,还要保证花费最小,容易想到最小割(当然你要是想费用流的话,我们就没办法定义流量了) 我们来分析一下那些令人弃疗的组 ...

  8. [Python3网络爬虫开发实战] 1.8.1-pyspider的安装

    pyspider是国人binux编写的强大的网络爬虫框架,它带有强大的WebUI.脚本编辑器.任务监控器.项目管理器以及结果处理器,同时支持多种数据库后端.多种消息队列,另外还支持JavaScript ...

  9. atom 安装插件列表

    插件列表 atom-beautify docblockr autocomplete-python goto-definition platformio-ide-terminal symbols-tre ...

  10. LeetCode(55)Jump Game

    题目 Given an array of non-negative integers, you are initially positioned at the first index of the a ...