java-集合(容器)
青秋5
这个作者很懒,什么都没留下…
展开
-
java深化——各种类型的集合 存储方式的总结代码
有ArrayList,LinkedList,HashSet,TreeSet,HashMap,TreeMap六种集合的存储方式。需要注意的是HashSet存储与TreeSet的存储方式。以下是测试代码,代码中有解析:1、先编写一个用来创建对象的类Personpublic class Person implements Comparable<Person>{ private...原创 2019-07-23 20:08:00 · 496 阅读 · 0 评论 -
HashMap解析
HashMap的底层是哈希表,关于哈希表的存储原理可以看我博客《哈希表的存储原理》。关于HashMap存储 自定义对象 的知识可以看我博客《HashSet解析》,方式是相同的。HashMap常用方法的运用与遍历map集合的三种方式:public class TestHashMap { public static void main(String[] args) { HashMa...原创 2019-08-07 19:48:50 · 139 阅读 · 0 评论 -
HashMap与Hashtable的区别
版本不同HashMap ;JDK1.2 Hashtable JDK1.0 HashMap继承了AbstractMap,实现了Map接口;Hashtable继承了 Dictionary,实现Map接口 HashMap允许null键和null值,但null作为key只允许一个;Hashtable 为非null的键和值 HashMap是线程不同步的(效率高,安全性低);Hashtable是线程同步...原创 2019-08-07 19:42:47 · 107 阅读 · 0 评论 -
vector与ArrayList的区别
Vector类称作向量类,它实现了动态数组,是可以实现自动增长的对象数组Vector 与 ArrayList的区别相同点:底层数据结构相同,都是Object类型的数组不同点:1、Vector的add()方法是同步(synchroniszed)方法,ArrayList的add()方法是非同步方法2、Vector是在调用构造方法(创建对象)时,直接初始化容量为10,ArrayLis...原创 2019-08-07 19:39:37 · 225 阅读 · 0 评论 -
java容器——ArrayList详解
ArrayList是Java集合框架中的一个重要的类,它继承于AbstractList,实现了List接口。ArrayList底层数据结构是 数组,特点是有序,不唯一它提供了如下一些好处:动态的增加和减少元素 实现了ICollection和IList接口 灵活的设置数组的大小最简单的例子:ArrayListList=newArrayList();for(inti=0...原创 2019-08-07 19:34:29 · 152 阅读 · 0 评论 -
java深化——集合(容器)简介
什么是集合?集合,或者叫容器,是一个包含多个元素的对象; 集合可以对数据进行存储,检索,操作; 它们可以把许多个体组织成一个整体: 比如一副扑克牌(许多牌组成的集合); 比如一个电话本(许多姓名和号码的映射)。 什么是集合框架?集合框架是一个代表、操作集合的统一架构。所有的集合框架都包含以下几点:1、接口:表示集合的抽象数据类型。接口允许我们操作集合时不必关注具体实现,...原创 2019-07-18 11:29:56 · 154 阅读 · 1 评论 -
java深化——集合的接口与各种实现类的解析与对比总结
集合有Collection与Map两种接口,其中Collection有两种子接口(list、set)一、Collection接口的两个子接口(list、set): 1) List中的元素有序,不唯一。常用的实现类有ArrayList、LinkedList和 vector。 ·ArrayList:底层数据结构是(Object)数组;ArrayList的Object数组初始...原创 2019-07-19 20:32:34 · 215 阅读 · 0 评论 -
哈希表的存储原理(流程)
(1)调用hashCode()方法计算Hash码值(2)根据y=k(x)这样的函数计算存储位置 ——x就是哈希码值,y就是存储位置(3)如果位置上没有元素,则将元素存储(4)如果该位置上有元素,则需调用equal()方法比较内容是否相同,若相同则不再存储,不相同则存储在新的链表。...原创 2019-07-20 16:58:02 · 1239 阅读 · 0 评论 -
java深化——泛型的上限与泛型的下限
泛型的高级使用——容器中使用泛型(泛型的上限与下限)代码中有对泛型上限与下限的解释1、先编写一个父类Personpublic class Person { private String name; private int age; public String getName() { return name; } public void setName(String na...原创 2019-07-23 19:58:25 · 162 阅读 · 0 评论 -
HashSet解析
运用HashSet存储自定义对象 ——Person必须重写HashCode()方法和equal()方法public class Person { private String name; private int age; public String getName() { return name; } public void setName(String ...原创 2019-08-07 19:56:27 · 119 阅读 · 0 评论