当前位置:文档之家› JAVA集合之LIST列表深刻总结案例附上解释跟总结

JAVA集合之LIST列表深刻总结案例附上解释跟总结

Iterator iterator1=list1.iterator();//对于集合中没有引用类型的时候可以这样去遍历, 无需判断类型,java 对于基本类型自动分装拆箱。
while(iterator1.hasNext()){ System.out.println(iterator1.next()); }
* char----->Character(2)
Object[] object1=list1.toArray();//集合转换成对象数组,必须是对象数组 for(int i=0;i<object1.length;i++) {
System.out.println(object1[i]);//数组没有 get()这个方法,这个方法只有集合有。 } } }
class Person{ String name; int no; int score; public Person(String name,int no,int score){ =name; this.no=no; this.score=score; } public void setname(){ =name; } public void setno(){ this.no=no; } public void setscore(){ this.score=score; } public String getname(){
public class ArrayListDemo2 { public static void main(String[] args){
ArrayList<Object> list =new ArrayList<Object>();//泛型的用法 Person5 p1=new Person5("李川",111,80); Person5 p2=new Person5("李四",111,80); Person5 p3=new Person5("李五",111,80); list.add(p1); list.add(new Integer(111)); list.add(new Float(22.2f)); list.add(new Integer(333)); list.add(new Character('a')); list.add(null); list.add(new String("记住用 for 循环遍历不同类型")); list.add(p2); list.add(p3); list.remove((Character)'a'); list.remove((Float)22.2f);//移除的是对象,所以括号里面是对象,不能是基本类型, 需要强转为对象 list.remove("记住用 for 循环遍历不同类型");//String 本身就是一个对象
System.out.println(" 姓 名 :"+list.get(i).getname()+"\t"+" 学 号:"+list.get(i).getname()+"\t"+"分数:");
System.out.println(list1.get(i)); } */
//一种是利用迭代器,取得迭代器先调用 iterator()这个方法。 Iterator<Person> iterator=list.iterator();//声明集合的时候用泛型,要求取得迭代器的
return name; } public int getno(){
return no; } public int getscore(){
return score; } }
案例 2. ArrayListDemo2 /**
* 总结:如果集合中既存放了基本类型,又存放了引用类型的数据,那该怎么遍历呢? * 解决办法:不管是 for 循环遍历还是迭代器 Iterator 遍历,都是可以的。用到的关键字是 instanceof 进行判断是什么类型的数据,从而进行遍历。 * 需要注意的是迭代器遍历,iterator.next(),出现一次便遍历下一个,所以一般得用变量替 换。Object object=iterator.next(); */ package List 列表; import java.awt.List; import java.util.ArrayList;//关于 ArrayList 的用法问题:若是基本类型跟应用类型一起存放的时 候,如何? import java.util.Iterator;
Person p1=new Person("李小川",111,80); Person p2=new Person("李四",111,80); Person p3=new Person("李五",111,80); list.add(p1); list.add(p2); list.add(p3); list1.add("添加了字符串"); list1.add(111); list1.add(333); list1.add('a'); list1.add((byte) 3); list1.remove((Integer)111);//括号里面要求的是对象,所以需要进行强转 list1.remove((Character)'a'); list1.remove((Byte)(byte)3);//先把整型的转换成字符型,在转换成字节引用类型 //有两种方法遍历,一种利用 for 循环中 get(index) /* for(int i=0;i<list.size();i++){
public class ArrayListDemo1 { public static void main(String[] args){ ArrayList<Person> list =new ArrayList<Person>();//泛型的用法
ArrayList list1 =new ArrayList<Comparable>();//无泛型的用法
=name; } public void setname(){
=name; } public void setno(){
this.no=no; } public void setscore(){
this.score=score; } public String getname(){
Iterator<Object> iterator=list.iterator();
while(iterator.hasNext()){
Object object=iterator.next();
//
if(object instanceof Person5){
//
Person5 p=(Person5) object;
Java 集合系列之 List 列表学习总结 一.ArrayList 实例 实例 1:ArrayListDemo1 /**
* 总结: * 1.用两种方法遍历 ArrayList 去遍历集合:for 循环 get(index);Iterator 迭代器方法遍历,首先 取得遍历器 Iterator<Person> iterator=list.iterator();调用 hasNext(),next(). * 2.集合中泛型的应用。 */ package List 列表; import java.util.ArrayList;//关于 ArrayList 的用法问题:若是基本类型跟应用类型一起存放的时 候,如何? import java.util.Iterator;
号:"+iterator.next().getno()+"\t"+"分数:"+iterator.next().getscore()); System.out.println(" 姓 名 :"+p.getname()+"\t"+" 学 号 :"+p.getno()+"\t"+" 分
数:"+p.getscore());//这个是按顺序输出的 }
*
* 一.首先java集合不支持存放基本类型的,只能存放引用类型的对象。但是真的不可以存放
基本类型数据吗?当然不是,java系统可以实现自动分装。
* 当你要对基本数据类型进行操作的时候,比如删除remove(object),可以通过强转,变
成引用对象类型。八个基本类型都有对应的引用类型。
* int------>Integer(4)
//
else if(list.get(i) instanceof String)
//
System.out.println(list.get(i));
//
}
}
}
class Person5{ String name; int no; int score; public Person5(String name,int no,int score){ =name; this.no=no; this.score=score; } public Person5(int no,int score){ this.no=no; this.score=score; } public Person5(String name){
时候也得用泛型,只有是该类型的迭代器才可以迭代的。 while(iterator.hasNext()){ Person p=iterator.next();//注意这里要是没有使用泛型的话,则需要进行强制转
相关主题