packagecom.itheima01;importjava.util.ArrayList;/*循環(huán)10次: 10.fori遍歷數(shù)組: arr.fori遍歷集合: list.fori遍歷字符串: s.length().fori*/publicclassDemo02{publicstaticvoidmain(String[] args){//創(chuàng)建了一個(gè)存儲(chǔ)字符串的集合ArrayList<String> list =newArrayList<>();//add() :添加方法list.add("新垣結(jié)衣");list.add("石原里滅");list.add("馬冬梅");list.add("花澤香菜");//遍歷//快捷鍵: list.forifor(int i =0; i < list.size(); i++){//獲取元素String s = list.get(i);//判斷字符串的長(zhǎng)度是否是4if(s.length()==4){//輸出元素System.out.println(s);}}//需求:打印名字是4個(gè)字的人}}
5.集合存儲(chǔ)自定義類型
packagecom.itheima01;importjava.util.ArrayList;publicclassDemo03{publicstaticvoidmain(String[] args){//創(chuàng)建集合ArrayList<Person> list =newArrayList<>();Person p1 =newPerson("馬冬梅",'女',37);Person p2 =newPerson("十元",'女',40);Person p3 =newPerson("霉霉",'女',39);//添加元素list.add(p1);list.add(p2);list.add(p3);//輸出System.out.println(list);//集合的遍歷for(int i =0; i < list.size(); i++){//獲取元素Person p = list.get(i);//判斷年齡if(p.getAge()>38){System.out.println(p);}}//需求:打印年齡大于38的人}}
集合的練習(xí):
1.如果一個(gè)人叫"馬冬梅",就把這個(gè)人的年齡改成40
packagecom.itheima01;importjava.util.ArrayList;publicclassDemo04{publicstaticvoidmain(String[] args){ArrayList<Person> list =newArrayList<>();Person p1 =newPerson("馬冬梅",'女',37);Person p3 =newPerson("霉霉",'女',39);Person p2 =newPerson("十元",'男',23);//添加元素list.add(p1);list.add(p2);list.add(p3);//如果一個(gè)人叫"馬冬梅",就把這個(gè)人的年齡改成40//遍歷集合for(int i =0; i < list.size(); i++){//獲取集合的每個(gè)元素Person p = list.get(i);//獲取名字String name = p.getName();//獲取性別char sex = p.getSex();//判斷名字if(name.equals("馬冬梅")){//創(chuàng)建新的Person對(duì)象姓名是原來(lái)的姓名,性別是原來(lái)的性別,年齡是40Person p4 =newPerson(name,sex,40);//把新元素替換舊的元素list.set(i,p4);}}//輸出結(jié)果System.out.println(list);}}
2.輸出有"美"字的字符串
packagecom.itheima01;importjava.util.ArrayList;publicclassDemo05{publicstaticvoidmain(String[] args){//創(chuàng)建集合,集合存儲(chǔ)StringArrayList<String> list =newArrayList<>();//給集合添加4個(gè)字符串元素//"石原里美" "馬東美" "十元" "郭美美"list.add("石原里美");list.add("馬東美");list.add("十元");list.add("郭美美");//輸出有"美"字的字符串//遍歷集合for(int i =0; i < list.size(); i++){//獲取每個(gè)元素String s = list.get(i);//遍歷字符串for(int j =0; j < s.length(); j++){//獲取字符串的每個(gè)字符char ch = s.charAt(j);//判斷字符if(ch=='美'){//輸出字符串System.out.println(s);//結(jié)束循環(huán),因?yàn)橹灰幸粋€(gè)美字,就不用繼續(xù)判斷這個(gè)字符串了break;}}}}}
6.刪除集合所有元素
packagecom.itheima01;importjava.util.ArrayList;publicclassDemo06{publicstaticvoidmain(String[] args){ArrayList<String> list =newArrayList<>();list.add("新垣結(jié)衣");list.add("石原里滅");list.add("馬冬梅");list.add("花澤香菜");//刪除集合的所有元素//i--for(int i =0; i < list.size(); i++){//刪除元素list.remove(i);i--;}//倒著刪for(int i=list.size()-1; i>=0; i--){list.remove(i);}//輸出System.out.println(list);}}
7.學(xué)生管理系統(tǒng)
packagecom.itheima02;//學(xué)生類publicclassStudent{privateString id;//學(xué)號(hào)privateString name;//姓名privateint age;//年齡privateString sex;//性別//構(gòu)造方法publicStudent(){}publicStudent(String id,String name,int age,String sex){this.id = id;this.name = name;this.age = age;this.sex = sex;}//set getpublicStringgetId(){return id;}publicvoidsetId(String id){this.id = id;}publicStringgetName(){return name;}publicvoidsetName(String name){this.name = name;}publicintgetAge(){return age;}publicvoidsetAge(int age){this.age = age;}publicStringgetSex(){return sex;}publicvoidsetSex(String sex){this.sex = sex;}}packagecom.itheima02;importjava.util.ArrayList;importjava.util.Scanner;publicclassDemo{publicstaticvoidmain(String[] args){//定義集合ArrayList<Student> list =newArrayList<>();//循環(huán)while(true){//顯示信息System.out.println("1.添加學(xué)生 2.修改學(xué)生 3.刪除學(xué)生 4.查看所有學(xué)生 5.退出系統(tǒng)");//用戶鍵盤輸入數(shù)字Scanner sc =newScanner(System.in);int a = sc.nextInt();//判斷用戶的選擇switch(a){case1://添加學(xué)生tianjia(list);break;case2://修改學(xué)生xiugai(list);break;case3://刪除學(xué)生break;case4://查詢學(xué)生chakan(list);break;case5://退出系統(tǒng)return;default:System.out.println("你輸入的有誤...");}}}//定義添加方法publicstaticvoidtianjia(ArrayList<Student> list){Scanner sc =newScanner(System.in);//鍵盤輸入學(xué)號(hào)System.out.println("請(qǐng)輸入學(xué)號(hào):");String id = sc.next();//輸入姓名System.out.println("請(qǐng)輸入姓名:");String name = sc.next();//輸入年齡System.out.println("請(qǐng)輸入年齡:");int age = sc.nextInt();//輸入性別System.out.println("請(qǐng)輸入性別:");String sex = sc.next();//創(chuàng)建學(xué)生對(duì)象Student s =newStudent(id,name,age,sex);//把對(duì)象放在集合中list.add(s);//給提示System.out.println("添加成功");}//查看功能publicstaticvoidchakan(ArrayList<Student> list){System.out.println("學(xué)號(hào)\t\t姓名\t\t年齡\t性別");//遍歷集合for(int i =0; i < list.size(); i++){//獲取元素Student s = list.get(i);//獲取信息System.out.println(s.getId()+"\t"+s.getName()+"\t\t"+s.getAge()+"\t\t"+s.getSex());}}//修改功能publicstaticvoidxiugai(ArrayList<Student> list){//1.鍵盤輸入學(xué)號(hào)Scanner sc =newScanner(System.in);System.out.println("請(qǐng)輸入學(xué)生的學(xué)號(hào):");String id = sc.next();//2.判斷學(xué)號(hào)是否存在//2.1遍歷集合for(int i =0; i < list.size(); i++){//2.2獲取集合中的學(xué)生對(duì)象Student s = list.get(i);//2.3獲取學(xué)生對(duì)象的學(xué)號(hào)String id1 = s.getId();//2.4判斷學(xué)號(hào)是否相同if(id.equals(id1)){//3.如果存在//3.1輸入新的姓名年齡性別//輸入姓名System.out.println("請(qǐng)輸入姓名:");String name = sc.next();//輸入年齡System.out.println("請(qǐng)輸入年齡:");int age = sc.nextInt();//輸入性別System.out.println("請(qǐng)輸入性別:");String sex = sc.next();//3.2創(chuàng)建新的學(xué)生對(duì)象Student news =newStudent(id,name,age,sex);//3.3用新的對(duì)象替換舊的對(duì)象list.set(i,news);//3.4提示修改成功System.out.println("修改成功");//結(jié)束方法return;}}//4.如果不存在//提示修改失敗System.out.println("修改失敗,學(xué)號(hào)不存在");}}