12.JAVA编程思想——集合的类型欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/51100510标准Java 1.0 和1.1 库配套提供了非常少的一系列集合类。但对于自己的大多数编程要求,它们基本上都能胜任。Java 1.2 提供的是一套重新设计过的大型集合库。1 VectorVector 的用法很简单,大多数时候只需用addElement()插入对象,用elementAt()一次提取一个对象,并用elements()获得对序列的一个“枚举”。但...
一、集合(1)集合接口Collection-List-Queue-SetMap(2)Collections工具类 二、List(1)ArrayList 默认容量为10,1.5倍增长,线程不安全(2)LinkedList 双向链表实现,线程不安全(3)CopyAndWriteArrayList 线程安全,通过复制数据达到最终的同步,不能确保同时同步,高性能的读,写操作性能低(4)Vector 默认容量为10,2倍...
HashSet类 HashSet是Set接口的典型实现,大多数时候使用Set集合时就是使用这个实现类。HashSet按Hash算法来存储集合中的元素,因此就有很好的存取和查找功能。HashSet具有以下特点:不能保证元素的排列顺序,顺序可能与添加顺序不同。顺序也有可能发生变化。HashSet不是同步的,如果多个线程同时访问一个HashSet,假设有两个或者两个以上线程同时修改HashSet集合时,则必须通过代码来保证其同步。集合元素值可以是null 当...
1.如何取到set集合的第一个元素。publicstaticvoid main(String[] args) {Set set = new HashSet();set.add("xixi");set.add("haha");set.add(123);set.add(1.2);System.out.println(set);//[1.2, haha, xixi, 123]//第一种方法if(!set.isEmpty()){System.out.println(set.iterator().next());// 1.2 }//第二种方法:将set集合转换成list集合 取第一个List list = new ArrayList(set);System.out.println(list.get(0));// 1....
集合概述为了在程序中保存数目不确定的对象,JDK中提供了一系列的特殊类,这些类可以存储任意类型的对象,并且长度可变,在Java中这些类被统称为集合。集合类都位于java.util包中。集合按照其存储类型分为两大类,即单列集合Collection和双列集合Map,这两种集合的特点如下:Collction:单列集合类的根接口,用于存储一系列符合某种规则的元素,它由两个重要的子接口,分别是List和Set。其中List的特点是元素有序、可重复。Set的特...
Java基础1、List 和 Set 的区别2、HashSet 是如何保证不重复的3、HashMap 是线程安全的吗,为什么不是线程安全的(最好画图说明多线程环境下不安全)?4、HashMap 的扩容过程5、HashMap 1.7 与 1.8 的 区别,说明 1.8 做了哪些优化,如何优化的?6、final finally finalize7、强引用 、软引用、 弱引用、虚引用8、Java反射9、Arrays.sort 实现原理和 Collection 实现原理10、LinkedHashMap的应用11、cloneable接口实现原理12、异常分...
所谓容器:往里面添加对象java所提供的容器API位于java.util包内。如下图: 详细参考:https://www.cnblogs.com/xiaoxi/p/6089984.html 原文:https://www.cnblogs.com/zyx1205/p/8625229.html
欢迎关注我的公众号“彤哥读源码”,查看更多源码系列文章, 与彤哥一起畅游源码的海洋。简介TreeMap使用红黑树存储元素,可以保证元素按key值的大小进行遍历。继承体系TreeMap实现了Map、SortedMap、NavigableMap、Cloneable、Serializable等接口。SortedMap规定了元素可以按key的大小来遍历,它定义了一些返回部分map的方法。public interface SortedMap<K,V> extends Map<K,V> {// key的比较器Comparator<? super K> comparator(...
1.List接口 此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。与 set 不同,列表通常允许重复的元素。 它是一个元素存取有序的集合。例如,存元素的顺序是11、22、33。那么集合中,元素的存储就是按照11、22、33的顺序完成的)。 它是一个带有索引的集合,通过索引就可以精确的操作集合中的元素(与数组的索引是一个道理)。 集合中可以...
百度“java 集合”图时。搜出来一张图。图蛮不错的。跟大家分享下。原文:http://www.cnblogs.com/liguangsunls/p/7106937.html
上代码 package com.core.array2collection;import java.util.ArrayList; import java.util.Arrays; import java.util.List;publicclass Demo {publicstaticvoid main(String[] args) {List<Student> stuList = new ArrayList<Student>();for(int i = 0 ; i < 5; i ++){Student stu = new Student();stuList.add(stu);stu.setId(i);stu.setName("007"+i);stu.setAge(10+i);}Student[] stuArray = stuList.toArray(new Student[stuL...
一、异常处理 1.两种异常: (1)程序员自身问题(运行时异常) (2)外界问题(可控异常) 2.两种异常的详细说明 (1)运行时异常 当程序发生运行时异常时,程序会中断程序。 例:p1为对象; p1 p = new p1(); p = null; p.sayHello(); //这时就会报空指针异常 NullPointerException(); ...
Map集合:|--Hashtable:底层是哈希表数据结构,是线程同步的。不可以存储null键,null值。|--HashMap:底层是哈希表数据结构,是线程不同步的。可以存储null键,null值。替代了Hashtable.|--TreeMap:底层是二叉树结构,可以对map集合中的键进行指定顺序的排序。 Map集合存储和Collection有着很大不同:Collection一次存一个元素;Map一次存一对元素。Collection是单列集合;Map是双列集合。Map中的存储的一对元素:一个是键,一个...
在编程中常常需要集中存放多个数据,可以使用数组来保存多个对象,但是数组的长度一旦初始化指定后,不能进行改变;而且数组无法保存具有映射关系的数据:语文——88,数学——100。为了保存数量不确定的数据,以及保存具有映射关系的数据(也称为关联数组),Java提供了集合类。集合类主要用于保存、盛装其他数据,因此集合类也被称为容器类。所有集合类都位于java.util包下,后来为了处理多线程环境下的并发安全问题,Java 5还在...
Set和Map的关系Set代表无序,不能重复的集合;Map代表Key-Value组成的集合,是一种关联数组。Map的Key要求是不能重复,没有顺序。把Map的所有Key组合起来就是Set。Set<K> keySet();HashMap和HashSet原理HashMap底层是用数组链表存储的,元素是Entry。向HashMap添加<Key,Value>时,由key的hashcode决定Entry存储位置,当两个Entry对象的key的hashcode相同时,由key的equals()方法返回值决定采用覆盖行为(返回true),还是在链表头添...