【java集合基础篇 简单总结】教程文章相关的互联网学习教程文章

java集合框架Collection【代码】

package collection;import java.util.ArrayList; import java.util.List;import org.apache.log4j.Logger; import org.junit.Test;/** * <p>@ClassName: CollectionTest01</p> * <p>Description: java集合</p> */publicclass CollectionTest01 {privatestatic Logger logger = Logger.getLogger(CollectionTest01.class);@Testpublicvoid test01(){List<String> list1 = new ArrayList<String>();List<String> list2 = new ArrayL...

java集合Collection接口增删查改【代码】

起初创建一个集合容器 1 Collection c = new ArrayList(); 添加boolean add(object e)将指定的元素添加到此处列表的尾部1 c.add("拆弹专家"); 2 c.add("变形金刚"); 3 c.add("夏洛克的烦恼"); 4 c.add("羞羞的铁拳"); 5 System.out.println(c.toString());//[拆弹专家, 变形金刚, 夏洛克的烦恼, 羞羞的铁拳] boolean addAll(Collection c)将指定collection中的所有元素都添加到此处 collection中 1 Collection c2 = new ArrayList...

Java中的不可变集合,我们换个方式理解!!!【代码】【图】

不可变集合例:public static final ImmutableSet<String> COLOR_NAMES = ImmutableSet.of("red","orange","yellow","green","blue","purple");class Foo {Set<Bar> bars;Foo(Set<Bar> bars) {this.bars = ImmutableSet.copyOf(bars); // defensive copy!} } 为什么要使用不可变集合不可变对象有很多优点,包括:当对象被不可信的库调用时,不可变形式是安全的;不可变对象被多个线程调用时,不存在竞态条件问题不可变集合不需要考...

Java常见集合之ArrayList深入分析【代码】【图】

Java常见集合之ArrayList深入分析一、继承树二、ArrayList源码分析2.1 继承结构和层次关系2.2 源码分析: 1/* 2继承自AbstractList,实现了List、RandomAccess、Cloneable、Serializable接口3 1)RandomAccess接口:用来快速随机存取,在实现了该接口后,用普通for来遍历,性能更高4 2)Cloneable接口:实现了该接口,就可以使用Object.Clone()方法了5 3)Serializable接口:实现了该接口,表明该类可以被序列化6*/ 7...

java集合框架01【代码】【图】

List 接口存储一组不唯一(可以重复),有序(插入顺序)的对象01. ArrayList实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高通过看ArrayList的源码得知:/*** Constructs an empty list with an initial capacity of ten.构造一个初始容量为十的空列表*/public ArrayList() {this(10); 调用带参的构造 参数为10}ArrayList创建的时候,数组初始化长度为10!List list=new ArrayList(-1); ...

java集合(二)Set集合之EnumSet详解【代码】

1.定义:添加枚举类元素的专用集合类2.与其他集合类区别:EnumSet内部实现不使用常见的数据结构,比如数组(ArrayList),链表(LinkedList),哈系表(HashMap、Hashtable、HashSet),红黑树(TreeMap、TreeSet)而是使用位运算完成集合的基本操作EnumSet是抽象类,只能通过静态工厂方法构造EnumSet对象,具体如下:EnumSet<E> noneOf(Class<E> elementType):构造一个空的集合EnumSet<E> allOf(Class<E> elementType):构造一个包含枚...

《Java 核心技术》卷I 第9章 集合【代码】

9.1 Java集合框架9.1.1 集合接口与实现分离1、Java集合类库将接口(interface)与实现(implementation)分离。2、队列接口指出可以在队列的尾部添加元素,在队列的头部删除元素,并且可以查找队列中元素的个数。  队列通常有两种实现方式:一种是使用循环数组;另一种是使用链表。9.1.2 Collection接口2个基本方法: add:用于向集合中添加元素  boolean add(E element);iterator:用于返回一个实现了Iterator接口的对象  I...

集算器协助java处理结构化文本的集合运算

JAVA不直接支持集合运算,因此要用嵌套循环才能实现文本文件之间的交集、并集、差集等集合运算,如果文件数量较多,或者文件较大而无法放入内存直接计算,再或者要按照多个字段进行集合运算,则相应的代码会更加复杂。集算器直接支持集合运算,可以协助JAVA轻松实现此类算法,下面我们通过例子来看一下具体作法。有两个小文件:f1.txt和f2.txt,第一行是列名,现在需要对文件中的Name字段进行交集运算。部分数据如下:文件f1.txt:文...

Java高级特性 第1节 集合框架和泛型【代码】【图】

Java中,存储多个同类型的数据,可以用数组来实现,但数组有一些缺陷:数组长度固定不变,布恩那个很好的适应元素数量动态变化的情况可以通过数组.length获取数组长度,却无法直接获取数组中实际存储的元素个数数组采用在内存中分配连续空间的方式存储,根据元素信息查找时的效率比较低,需要多次比较  Java提供了一套性能优良、使用方便的接口和类,他们都位于java.util包中。一、Java中的集合   Java集合类主要由Map接口和Co...

Java编程练习(四)——集合框架应用【代码】【图】

Java集合框架小应用之扑克牌小游戏学习了Java集合框架之后,我写了一个扑克牌小游戏来巩固知识。学习之余的练习之作,有不足之处还得多多指教了~(*/ω\*)扑克牌小游戏背景:1. 创建一副扑克牌,不考虑大小王 包括四种花色:黑桃、红桃、梅花、方片 十三种点数:2-10,J Q K A2. 创建两名玩家,玩家至少要有ID、姓名、手牌等属性,手牌为扑克牌的集合3. 洗牌,将之前创建的扑克牌顺序打乱(说明是有序的)4. 发牌,将洗牌之后...

Java集合类汇总记录--guava篇

BiMapHashBiMap<K,V>实现了两份哈希表数据结构(本类独立实现)。分别负责两个方向的映射。 EnumBiMap<K,V>两个EnumMap对象分别负责两个方向的映射。 EnumHashBiMap<K,V>一个EnumMap对象负责K到V映射,一个HashMap对象负责V到K的影身。 MultiMap HashMultimap<K,V>使用HashMap<K,HashSet<V>>对象实现。 TreeMultimap<K,V>使用TreeMap<K,TreeSet<V>>实现。 ArrayListMultimap使用HashMap<K, ArrayList<V>>实现。 LinkedHashMultimap...

Java 集合源码分析(一)HashMap【代码】【图】

目录Java 集合源码分析(一)HashMap1. 概要2. JDK 7 的 HashMap3. JDK 1.8 的 HashMap4. Hashtable5. JDK 1.7 的 ConcurrentHashMap6. JDK 1.8 的 ConcurrentHashMap7. 最后补充一下 HashMap 中的一些属性和方法附:更这个系列感觉自己像是又挖了一个坑??,不过趁自己刚好工作不太忙,有空闲期,静下心来研究学习源码也是一件很值得做的事,自己尽量会把这个坑填完??。Java 集合源码分析(一)HashMap1. 概要HashMap 作为我们经常...

java集合体系与C#集合比较【图】

集合框架是为表示和操作集合而规定的一种统一的标准的体系结构。任何集合框架都包含三大块内容:对外的接口、接口的实现和对集合运算的算法。java集合框架:1. 什么是框架:类库的集合2.集合框架:用来表示和操作的统一的架构,包含了实现集合的接口与类3.集合:存放数据的容器集合框架包含了两部分:一部分是接口,一部分是类4.为什么会出现接口:因为集合框架中的很多类 功能是相似的【所以用接口来规范类】主要结构图:简化图ol...

面试题:Java集合面试题(40道)【代码】

Java集合框架为Java编程语言的基础,也是Java面试中很重要的一个知识点。这里,我列出了一些关于Java集合的重要问题和答案。  1.Java集合框架是什么?说出一些集合框架的优点?  每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久。它还包...

java集合(四)Map集合之Properties详解【代码】

一、Properties类介绍java.util.Properties继承自java.util.Hashtable,从jdk1.1版本开始,Properties的实现基本上就没有什么大的变动。从http://docs.oracle.com/javase/7/docs/api/的jdk7的官方api文档中我们可以看到对Properties类的介绍。Properties class是一个持久化的属性保存对象,可以将属性内容写出到stream中或者从stream中读取属性内容,在底层的Hashtable中,每一对属性的key和value都是按照string类型来保存的。 Pro...