/*
利用HashSet来存储自定义元素
HashSet集合保证元素唯一性的依据:
是通过两个方法,hashCode和equals来完成。
如果元素的HashCode值相同,才会判断equals是否为true。
如果元素的HashCode值不同,不会调用equals。
这两个方法都是HashSet调用的,并没有显式调用。
注意:对于判断元素是否存在,以及删除等操作,依赖的方法是元素的hash...
分类:
编程语言 时间:
2016-05-12 17:38:57
阅读次数:
189
/*
Collection:
|--List:集合中的元素是有序的,可重复的,有索引。
|--Set:集合中的元素是无序的,不可重复的,无索引。
List中的特有方法:
增
add(index,element);
addAll(index,Collection);
删
remove(index);
改
set(index,element);
查
get(index);
subLi...
分类:
编程语言 时间:
2016-05-12 17:28:17
阅读次数:
178
/*
在ArrayList中存储自定义对象
为了实现在ArrayList中存储不重复的对象,需要重写equals方法。remove()方法和contains()方法都会调用equals()方法。
在使用HashSet时,也要在对象类中重写两个方法即,hashCode()和equals()方法。因为HashSet会在底层调用这两个函数。
首先比较HashCode(对象引用或地址),如果相同,再用e...
分类:
编程语言 时间:
2016-05-12 17:11:06
阅读次数:
232
/*
集合框架:
为什么会出现这么多容器呢?
因为每一个容器对数据的存储方式都有不同。这个存储方式称之为:数据结构。
集合框架如下:
Collection:遍历元素使用迭代器(iterator)
|--List:有索引、可重复
|--ArrayList:底层数据结构是数组
|--LinkedList:底层数据结构是链表
|--Vector:
|--Set:无索引、不可重复
...
分类:
编程语言 时间:
2016-05-12 16:32:43
阅读次数:
135
/*
利用LinkedList来实现队列(先进先出)和堆栈(先进后出)
堆栈:后进先出
队列:先进先出
*/
import java.util.*;
/*队列:将LinkedList进行封装,实现队列先进先出的功能特点*/
class Duilie
{
private LinkedList link;
Duilie()
{
link=new LinkedList();
...
分类:
编程语言 时间:
2016-05-12 16:22:03
阅读次数:
208
/*
复习集合框架:
Collection
|--List:有序的,可重复,有索引
|--ArrayList:底层数据结构是基于数组的,查询速度快,增删速度较慢
|--LinkedList:底层数据结构是基于链表的,查询速度慢,增删速度较快
|--Vector:ArrayList是对Vector的版本升级,Vector是线程同步的,而ArrayList是线程不同步的,需要加锁。
|...
分类:
编程语言 时间:
2016-05-12 16:15:20
阅读次数:
132
/*
TreeSet可以对Set集合中的对象进行排序;
原理,TreeSet在底层调用了Comparable接口的方法compareTo().
所以,在使用TreeSet存储自定义对象时,要想实现自定义类对象的自然排序,需要类实现Comparable接口,并重写覆盖接口唯一的方法compareTo().
需求:
往TreeSet集合中存储自定义对象学生。
想按照学生的年龄进行排序。
记住:排...
分类:
编程语言 时间:
2016-05-12 16:01:31
阅读次数:
219
import java.util.*;
/*
练习:按照字符串长度排序。
字符串本身具备比较性,但是它的比较方式不是所需要的。这时就只能使用比较器
注意:在方式二中:
int num=new Integer(str1.length()).compareTo(new Integer(str2.length()));
此时num的值有三种可能。正数、负数、零。千万不要写下面的代...
分类:
编程语言 时间:
2016-05-12 15:59:41
阅读次数:
165
一Map接口
Map接口中的每个成员方法由一个关键字(key)和一个值(value)构成。Map接口不直接继承于Collection接口,因
为它包装的是一组成对的"键-值"对象的集合,而且在Map接口的集合中也不能有重复的key出现,因为每个键只能与
一个成员元素相对应。
Map接口定义了存储"键(key)——值(value)映射对"的方法。实现Map接口...
分类:
编程语言 时间:
2016-05-12 13:04:42
阅读次数:
241
Set:元素是无序,不可重复的 HaseSet:底层数据结构是哈希表 定义一个类Demo 获取Demo对象,system.out.println(demo),打印demo对象,Demo@xxxxxx Demo对象在内存中是按照哈希值存储在哈希表中,取出也是按照哈希值,所以是无序的 结果: Demo@ ...
分类:
编程语言 时间:
2016-05-12 01:23:05
阅读次数:
207