2018-06-05
集合
体系结构collection:list,queue,set
map
list有序并且可以重复的集合
;arraylist
方法:add(对象)
add(index,对象)添加到列表中的任意位置
get(index)获取列表中的对象
remove(index)通过index移除集合中的对象
remove(对象)通过对象的方式来移除对象
((子类)(arraylist.get(index))).子类方法
arraylist.set(index,对象)修改指定集合中的元素
set:无序并且不能重复的集合,被称为集
hashset是set的一个重要实现类,称为哈希集
hashset中的元素无序并且不可以重复
hashset中只允许一个null元素
具有良好的性能
add()添加
clear()清空
eqals()
判断那个是我们要找的元素
hashcode()
相当于定义规则
equals()是我们要判断要找的内容
isempty()集合是否为空
iterator()迭代器方法
set it=new set.iterator();
可以以统一的方式对各种元素进行遍历
hasNext()检测集合中是否还有下一个元素
next()集合中的下一个元素
size()集合大小
toarry()转换为数组
hashset()加载因子0.75
ps:重写hashcode和equals
hashcode()已经足够我们使用,我们只需要拿来使用就可以了
public equals(object obj){
if(this==obj){
return ture;
}
if(obj.getclass==cat.class){
cat Cat=(cat) obj;
rerurn Cat.getname().equals(name)&&(cat.getmonth()==month)&&(cat.getSpeies().equals(month));
}
}
set中自定义类和字符类相比多一个比较
自定义类中hashcode()和equal()需要重写
contains()查看对象是否存在
泛型,约束我们集合中的类型
<类型>来定义泛型
删除set集合中的数据
增强型for循环来遍历集合中的数据
for(类型 临时变量名:集合名){
临时变量名为当前遍历集合元素;
}
删除集合中的全部元素:集合名.removeAll(集合名);
Map集合
Map中的数据以键值对来存储(key-value)
key-value以entry类型的对象实例存在
可以通过key 值来快速查找value的值
一个映射不能包含重复的键
value可以对应多个key的值
hashmap:
基于哈希表的map接口的实现
允许使用null值和null键
只能有一个null键
hashmap中的entry对象是无序排列的;
map接口的方法
clear()清空map集合
entryset()获取键值对所有内容
get(key)通过key来获取集合元素的内容
put(key,value)相当于add
remove(key)通过key值来移除元素
value()返回元素的value值
isempty()集合是否为空
迭代map中value的值
Iterator<String> it =animal.values().iterator();
使用迭代器输出key的值
通过entryset方法完成
set <entry<string,string>> entryset=animal.entryset();
在map中查找输出
使用keyset方法
set <String> animal=new map.keyset();