java 深入技术二(Collection)
1. java集合
存储和管理多个java对象
包括很多java类和接口
Collection
List Set
ArrayList LinkedList HashSet TreeSet
Map
HashMap TreeMap
工具类:Collections,Arrays
java集合包含多个集合类,这些集合类可以按照自己的特点按照不用的结构方式把相似的数据组织在一起,方便程序处理
2. Connection接口
存储到集合中的都是java对象
顶层接口Connection
1)一个集合就是一个容器,可以盛很多对象,这些对象称为集合的元素
一个集合必须有添加元素和删除元素的方法
为了方便处理,还需要依次取出每个元素的方法-遍历方法
为了方便处理元素,还需要提供判断某个元素是否在集合中的方法
不同类型的集合有其特定的结构,还会有和此结构相关的一些方法
//添加元素 collection.add(Object)
//删除元素 colletion.remove(object)
//判断元素是否在集合中collection.contains(object)返回值为布尔值
2)**Iterator迭代器(遍历集合元素的对象)
Iterator迭代器,依次取出所有元素
boolean hasNext() //判断是否有下一个元素
Object next() //返回下一个元素
void remove() //删除指针指向的元素
hasNext() 方法实际是判断当前光标指向的位置是否有元素
next()方法实际做了两件事;1.返回光标指向位置的元素;2把光标移动到下一个位置
3)Collection接口的api
第一组方法
boolean add(Object o) //添加一个元素
boolean remove(Object o) //删除一个元素
Iterator iterator() //获得此集合的迭代器,用来遍历集合中的元素
boolean contains() //判断一个元素是否在此集合中
void clear () //清空此集合中的元素
boolean isEmpty() //判断此集合是否包含元素
int size() //获得此集合包好多少元素
第二组方法
boolean addAll(Collection c)//添加另一个集合的所有元素
boolean removeAll(Collection c) //删除此集合中包含另一个集合的元素
boolean containsAll(Collection c ) //判断此集合是否包含另一个集合中的元素
boolean retainAll(Collection c) //删除此集合中不属于另一个集合的元素(求交集)
3.集合如何存储元素数据
使用集合存储自定义类的对象
Collection collection =new ArrayList();
Person p=new Person("dan",12);
collection.add(p);
java 深入技术二(Collection)的更多相关文章
- java集合之二(collection架构)
转载请注明出处:http://www.cnblogs.com/skywang12345/p/3308513.html 首先,我们对Collection进行说明.下面先看看Collection的一些框架 ...
- Java多线程技术学习笔记(二)
目录: 线程间的通信示例 等待唤醒机制 等待唤醒机制的优化 线程间通信经典问题:多生产者多消费者问题 多生产多消费问题的解决 JDK1.5之后的新加锁方式 多生产多消费问题的新解决办法 sleep和w ...
- Java压缩技术(二) ZIP压缩——Java原生实现
原文:http://snowolf.iteye.com/blog/642298 去年整理了一篇ZLib算法Java实现(Java压缩技术(一) ZLib),一直惦记却没时间补充.今天得空,整理一下ZI ...
- JAVA面试题二
JAVA 综合面试题 2007-08-12 目录 Java面试题整理 9 Java面向对象 9 1. super()与this()的区别? 9 2. 作用域public,protected,priva ...
- Java基础技术JVM面试【笔记】
Java基础技术JVM面试[笔记] JVM JVM 对 java 类的使用总体上可以分为两部分:一是把静态的 class 文件加载到 JVM 内存,二是在 JVM 内存中进行 Java 类的生命周期管 ...
- java基础技术集合面试【笔记】
java基础技术集合面试[笔记] Hashmap: 基于哈希表的 Map 接口的实现,此实现提供所有可选的映射操作,并允许使用 null 值和 null 键(除了不同步和允许使用 null 之外,Ha ...
- Java Web技术总结(目录)
来源于:http://www.jianshu.com/p/539bdb7d6cfa Java Web技术经验总结(一) Java Web技术经验总结(二) Java Web技术经验总结(三) Java ...
- Java加密技术
相关链接: Java加密技术(一)——BASE64与单向加密算法MD5&SHA&MAC Java加密技术(二)——对称加密DES&AES Java加密技术(三)——PBE算法 ...
- Java Servlet 技术简介
Java Servlet 技术简介 Java 开发人员兼培训师 Roy Miller 将我们现有的 servlet 介绍资料修改成了这篇易于学习的实用教程.Roy 将介绍并解释 servlet 是什么 ...
随机推荐
- js阿拉伯数字转中文大写
function DX(n) { if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(n)) return "数据非法"; var unit = "千百 ...
- linux下,Python 多版本共存,及Pip,Easy_install 安装扩展包
Python2与Python3共存 安装Python3后,建立ln,使用Python(Python2),Python3 来区分两个版本 使用sudo apt-get install python3-s ...
- C#基础系列——多线程的常见用法详解
前言:前面几节分别介绍了下C#基础技术中的反射.特性.泛型.序列化.扩展方法.Linq to Xml等,这篇跟着来介绍下C#的另一基础技术的使用.最近项目有点紧张,所以准备也不是特别充分.此篇就主要从 ...
- C#基础系列——一场风花雪月的邂逅:接口和抽象类
前言:最近一个认识的朋友准备转行做编程,看他自己边看视频边学习,挺有干劲的.那天他问我接口和抽象类这两个东西,他说,既然它们如此相像, 我用抽象类就能解决的问题,又整个接口出来干嘛,这不是误导初学者吗 ...
- [Django 1]安装Django并创建虚拟虚拟环境项目
1)安装Django 使用pip来安装,命令如下: pip3 install Djangopip install Django(安装到python2)python3 -m pip install Dj ...
- python 列表生成式
r = [x*x for x in range(10)] r list类型
- 区间第K大(一)
Problem: 给定无序序列S:[b, e),求S中第K大的元素. Solution 1.裸排序 2.现将区间均分成两段,S1, S2,对S1,S2分别排序,然后
- linux之svn
sudo apt-get install subversion 实践出真理
- TAC Alpha版本 冲冲冲!!!
第1天 第2天 第3天 第4天 第5天 第6天 第7天 第8天 第9天 第10天 测试随笔 冲刺总结
- logo新