list集合框架&如何设置看底层源码&迭代器的删除&Iterator 和ListIterator 的区别&演示ArrayList、Vector、LinkedList基本使用方法

J2EE_02(list集合框架&如何设置看底层源码&迭代器的删除&Iterator 和ListIterator 的区别&演示ArrayList、Vector、LinkedList基本使用方法)

**

一、list集合

**
1.List list=new ArrayList(); //默认的数据类型是object
2.jdk高版本兼容底版本(版本向下兼容)
3.List的取值方式(三种):遍历(foreach) 迭代(iterator) 循环(for)
4.List集合中不可以存放值类型 ,只能使用引用类型(封装)
5.使用for移除时 中间不会留下空位置 往前挪(使用迭代器移除)
6.如果需要删除list集合中的元素请使用迭代器
例如1:删除集合中的偶数(是否有下一个值):

//使用Iterator 
		Iterator it=list.iterator();//下标为-1
		while(it.hasNext()) {//询问  请问有下一个值	
			Integer v=(Integer)it.next();
			if(v%2==0) {
				it.remove();
			}
		}
		System.out.println(list);
	例如:删除集合中的偶数(是否有上一个值):
//使用listitertor
	ListIterator ls=list.listIterator();
	while(ls.hasPrevious()) {//是否有上一个值
		System.out.println(ls.previous());
	}

二、看底层源码(按住Ctrl点击关键词):

如果不能,则设置能够看到底层源码(需要源码包src.zip):
	1.Window——Preferences——java——Installed JREs——选中表格中一项(百度)

三、迭代器(删除)

Iterator it=list.iterator();//下标为-1
		while(it.hasNext()) {//询问  请问有下一个值		吗    有  下标加1
			Object o=it.next();
			System.out.println(o);
			it.remove();//移除
		}

四、Iterator 和ListIterator 的区别:

1.ListIterator 有hasPrevious()方法:是否有上一个值(最前面是-1)

五、演示ArrayList、Vector、LinkedList基本使用方法。

1)增加元素,demo1
2)遍历(下标,foreach,迭代器)demo2
3)删除(在List中删除元素时要使用迭代器) demo3
4)关于List的初始化容量和负载因子 demo4
5)ListIterator

工具方法:`

// 反射
	static void print(List arrayList) throws Exception {
		Class c = arrayList.getClass();
		Field elementDataField = c.getDeclaredField("elementData");
		elementDataField.setAccessible(true);
		Object[] arr = (Object[]) elementDataField.get(arrayList);
		System.out.println("elementData.length=" + arr.length);
	}


感谢各位大佬前来观看,Thanks(互粉哦!)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值