集合学习笔记
来源:互联网 发布:华为麦芒4选择通话网络 编辑:程序博客网 时间:2024/05/22 02:29
Collection
1、 add方法的参数类型是Object。以便于接收任意类型对象。
2、集合中储存的都是对象的引用(地址)。
迭代器及时集合取出元素的方式。
1、添加元素
add(Object obj)
2、删除元素
remove(Object obj)
clear(Object obj)清空集合
3、判断元素
contains(Object obj)是否包含
isEmpty(Object obj)是否为空
4、取交集
a.retainAll(b):a集合元素变为a与b的交集,无交集为空,b集合不变
5、取出元素
Iterator it = al.iterator(); //获取迭代器,用于取出集合中的元素。
while(it.hasNext()) {
System.out.println(it.next());
2、集合中储存的都是对象的引用(地址)。
迭代器及时集合取出元素的方式。
1、添加元素
add(Object obj)
2、删除元素
remove(Object obj)
clear(Object obj)清空集合
3、判断元素
contains(Object obj)是否包含
isEmpty(Object obj)是否为空
4、取交集
a.retainAll(b):a集合元素变为a与b的交集,无交集为空,b集合不变
5、取出元素
Iterator it = al.iterator(); //获取迭代器,用于取出集合中的元素。
while(it.hasNext()) {
System.out.println(it.next());
}
import java.util.*;public class CollectionDemo {public static void main(String[] args) {method_add();method_get();}public static void method_get() {ArrayList<String> al = new ArrayList<String>();al.add("java1");al.add("java2");al.add("java3");Iterator it = al.iterator();while(it.hasNext()) {sop(it.next());}}public static void method_add() {ArrayList<String> al = new ArrayList<String>();al.add("java1");al.add("java2");al.add("java3");sop(al.size()); //打印长度sop(al);al.remove("java2");sop(al);sop(al.isEmpty());}public static void sop(Object obj) {System.out.println(obj);}}
二、list:元素是有序的,可以重复,因为该集合体系有索引。
—ArrayList:底层的数据结构使用的数组结构。特点:查询速度快,但是增删稍慢。线程不同步。
—LinkedList:底层使用的链表数据结构。特点:增删速度很快,查询稍慢。
—Vector:底层是数组数据结构。线程同步。被ArrayList替代了。枚举就是Vector特有的取出方式。
特有方法:凡是可以操纵角标的方法都是该体系特有的方法。
增
add(index, element);在index的位置增加一个元素。
addAll(index,Collection);在index位置增加指定集合的元素
删
remove(index);把某个元素删除
改
set(index, element):把角标index位置的元素替换
查
get(index):查找index位置的元素,可用for循环遍历,查找所有元素,为list特有的查找方式。
sunList(start, end)
listIterator();
import java.util.*;public class ListDemo {public static void main(String[] args) {method_list();}public static void method_list(){ArrayList<String> al = new ArrayList<String>();al.add("java1");al.add("java2");al.add("java3");al.add("java4");sop(al);//添加元素al.add(2,"sun");sop(al);//移除元素al.remove(1);sop(al);//替换元素al.set(1,"javao5");sop(al);//查找元素并迭代sop(al.get(3));sop("");for(int i = 0; i < al.size(); i++ ) {sop(al.get(i));}sop("");Iterator it = al.iterator();while(it.hasNext()) {sop(it.next());}//查找元素的位置sop(al.indexOf("java4"));//获取子串List list =al.subList(1,3);sop(list); }public static void sop(Object o) {System.out.println(o);} }运行结果:[java1, java2, java3, java4][java1, java2, sun, java3, java4][java1, sun, java3, java4][java1, javao5, java3, java4]java4java1javao5java3java4java1javao5java3java43[javao5, java3]
ListIterator
List集合特有的迭代器:列表迭代器listIterator是Iterator的子接口;
用迭代器迭代时不能同时进行集合添加等操作,会引起并发异常。只能用迭代器内的方法操作元素,可是Iterator方法是有限的,只有判断、取出和删除操作。如果想要其他的操作如添加、修改等,就需要使用其子接口ListIterator。该接口只能通过List集合的ListIterator()方法获取。可以在遍历过程中进行增、删、改、查。
import java.util.*;public class ListDemo {public static void main(String[] args) {mothod_ListIteraator() ;}public static void sop(Object o) {System.out.println(o);} public static void mothod_ListIteraator() { ArrayList<String> al = new ArrayList<String>();al.add("java1");al.add("java2");al.add("java3");ListIterator li =al.listIterator();while(li.hasNext()) {Object obj = li.next();if (obj.equals("java2")) {//li.add("java007"); li.set("pan");}}sop(al);while(li.hasPrevious()) {sop(li.previous());} }}运行结果:[java1, pan, java3]java3panjava1
0 0
- 集合学习笔记
- Java集合学习笔记
- JAVA学习笔记--集合
- java学习笔记--集合
- JAVA集合学习笔记
- 框架集合学习笔记
- List集合学习笔记
- Map集合学习笔记
- 集合学习笔记
- scala学习笔记:集合
- Java学习笔记-集合
- Java集合学习笔记
- JAVA学习笔记--集合
- Java学习笔记【集合】
- 学习笔记08-集合
- iOS集合 学习笔记
- 集合类学习笔记
- 集合类学习笔记
- CDH5.3集群安装笔记-环境准备
- innerHTML not innerHtml
- Xcode6使用iOS7模拟器调试的方法
- 租啄昨足拙族紫谞仔孜滓浊罪诅注拙自诅
- 【透析法听力】D7
- 集合学习笔记
- iOS 8.0 推送注册
- 总仔钻揍资纂转仔锥转总谞棕最座姿转醉
- RESTful架构:历史+规范+进阶
- 《数据结构》课程设计
- 茁纂啄捉着咨字族篆琢诅邹撞谞足孜罪族
- Java基础概括
- 拽撰赚驻庄妆撞茁最状尊装撰卒邹祖滋桌
- 宗椎啄驻最棕啄醉谆佐钻足茁族咨奏赚足