public?class?Student?{
String?name;
int?age;
public?Student(int?age,String?name){
this.name=name;
this.age=age;
}
}import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class Listtest { /** * 用于存放學(xué)生信息的容器(List列表) */ public List testList; public Listtest(){ this.testList=new ArrayList(); } /** * 添加學(xué)生信息 */ public void testAdd(){ //判斷列表是否為空 ? System.out.println("判斷是否為空:"+testList.isEmpty()); Student stu1=new Student(20,"小明"); testList.add(stu1); Student tem1=(Student) testList.get(0); System.out.println("添加了學(xué)生:"+tem1.age+":"+tem1.name); Student stu2=new Student(18, "鄒鄒"); testList.add(stu2); Student tem2=(Student) testList.get(1); System.out.println("添加了學(xué)生:"+tem2.age+":"+tem2.name); Student stu3=new Student(19,"啊牛哥"); testList.add(stu3); Student tem3=(Student) testList.get(2); System.out.println("添加了學(xué)生:"+tem3.age+":"+tem3.name); testList.add(null); testList.add(stu2); } /** * 遍歷輸出 * 方法1 * @param args */ public void testGet(){ int size=testList.size(); System.out.println("有如下學(xué)生:"); for(int i=0;i<size;i++){ Student stu=(Student) testList.get(i); System.out.println(stu.age+":"+stu.name); } } /** * 遍歷輸出 方法2 迭代器Iterator * @param args */ public void testIterator(){ //調(diào)用方法獲取列表迭代器 Iterator i1=testList.iterator(); System.out.println("使用迭代器遍歷!"); while(i1.hasNext()){//判斷是否還有數(shù)據(jù) Student stu=(Student) i1.next(); System.out.println(stu.age+":"+stu.name); } } /** * 通過(guò)for each 方法遍歷 * @param args */ public void testForEach(){ System.out.println("有如下學(xué)生(for each)"); for(Object ob:testList){ Student stu=(Student) ob; System.out.println(stu.age+":"+stu.name); } } //獲取列表中的個(gè)數(shù) public void testSize(){ System.out.println("列表的長(zhǎng)度為:"+testList.size()); } /** * 刪除指定索引處的對(duì)象 * @param args */ public void testRemove() { if(testList.contains(null)){ int i=testList.indexOf(null); testList.remove(i); } } public static void main(String[] args) { Listtest l1=new Listtest(); l1.testAdd(); l1.testGet(); l1.testIterator(); l1.testForEach(); l1.testSize(); l1.testRemove(); l1.testSize(); }}運(yùn)行結(jié)果如下:判斷是否為空:true添加了學(xué)生:20:小明添加了學(xué)生:18:鄒鄒添加了學(xué)生:19:啊牛哥有如下學(xué)生:20:小明18:鄒鄒19:啊牛哥Exception in thread "main" java.lang.NullPointerException at collection.Listtest.testGet(Listtest.java:53) at collection.Listtest.main(Listtest.java:98)
我明明寫(xiě)了很多個(gè)方法,但是運(yùn)行的時(shí)候卻沒(méi)有顯示預(yù)期結(jié)果
qq_啊花橘子粥_0
2016-04-12 19:06:01