packagecom.itheima01;importjava.util.ArrayList;/*循環10次: 10.fori遍歷數組: arr.fori遍歷集合: list.fori遍歷字符串: s.length().fori*/publicclassDemo02{publicstaticvoidmain(String[] args){//創建了一個存儲字符串的集合ArrayList<String> list =newArrayList<>();//add() :添加方法list.add("新垣結衣");list.add("石原里滅");list.add("馬冬梅");list.add("花澤香菜");//遍歷//快捷鍵: list.forifor(int i =0; i < list.size(); i++){//獲取元素String s = list.get(i);//判斷字符串的長度是否是4if(s.length()==4){//輸出元素System.out.println(s);}}//需求:打印名字是4個字的人}}
5.集合存儲自定義類型
packagecom.itheima01;importjava.util.ArrayList;publicclassDemo03{publicstaticvoidmain(String[] args){//創建集合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的人}}
集合的練習:
1.如果一個人叫"馬冬梅",就把這個人的年齡改成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);//如果一個人叫"馬冬梅",就把這個人的年齡改成40//遍歷集合for(int i =0; i < list.size(); i++){//獲取集合的每個元素Person p = list.get(i);//獲取名字String name = p.getName();//獲取性別char sex = p.getSex();//判斷名字if(name.equals("馬冬梅")){//創建新的Person對象姓名是原來的姓名,性別是原來的性別,年齡是40Person p4 =newPerson(name,sex,40);//把新元素替換舊的元素list.set(i,p4);}}//輸出結果System.out.println(list);}}
2.輸出有"美"字的字符串
packagecom.itheima01;importjava.util.ArrayList;publicclassDemo05{publicstaticvoidmain(String[] args){//創建集合,集合存儲StringArrayList<String> list =newArrayList<>();//給集合添加4個字符串元素//"石原里美" "馬東美" "十元" "郭美美"list.add("石原里美");list.add("馬東美");list.add("十元");list.add("郭美美");//輸出有"美"字的字符串//遍歷集合for(int i =0; i < list.size(); i++){//獲取每個元素String s = list.get(i);//遍歷字符串for(int j =0; j < s.length(); j++){//獲取字符串的每個字符char ch = s.charAt(j);//判斷字符if(ch=='美'){//輸出字符串System.out.println(s);//結束循環,因為只要有一個美字,就不用繼續判斷這個字符串了break;}}}}}
6.刪除集合所有元素
packagecom.itheima01;importjava.util.ArrayList;publicclassDemo06{publicstaticvoidmain(String[] args){ArrayList<String> list =newArrayList<>();list.add("新垣結衣");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.學生管理系統
packagecom.itheima02;//學生類publicclassStudent{privateString id;//學號privateString name;//姓名privateint age;//年齡privateString sex;//性別//構造方法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<>();//循環while(true){//顯示信息System.out.println("1.添加學生 2.修改學生 3.刪除學生 4.查看所有學生 5.退出系統");//用戶鍵盤輸入數字Scanner sc =newScanner(System.in);int a = sc.nextInt();//判斷用戶的選擇switch(a){case1://添加學生tianjia(list);break;case2://修改學生xiugai(list);break;case3://刪除學生break;case4://查詢學生chakan(list);break;case5://退出系統return;default:System.out.println("你輸入的有誤...");}}}//定義添加方法publicstaticvoidtianjia(ArrayList<Student> list){Scanner sc =newScanner(System.in);//鍵盤輸入學號System.out.println("請輸入學號:");String id = sc.next();//輸入姓名System.out.println("請輸入姓名:");String name = sc.next();//輸入年齡System.out.println("請輸入年齡:");int age = sc.nextInt();//輸入性別System.out.println("請輸入性別:");String sex = sc.next();//創建學生對象Student s =newStudent(id,name,age,sex);//把對象放在集合中list.add(s);//給提示System.out.println("添加成功");}//查看功能publicstaticvoidchakan(ArrayList<Student> list){System.out.println("學號\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.鍵盤輸入學號Scanner sc =newScanner(System.in);System.out.println("請輸入學生的學號:");String id = sc.next();//2.判斷學號是否存在//2.1遍歷集合for(int i =0; i < list.size(); i++){//2.2獲取集合中的學生對象Student s = list.get(i);//2.3獲取學生對象的學號String id1 = s.getId();//2.4判斷學號是否相同if(id.equals(id1)){//3.如果存在//3.1輸入新的姓名年齡性別//輸入姓名System.out.println("請輸入姓名:");String name = sc.next();//輸入年齡System.out.println("請輸入年齡:");int age = sc.nextInt();//輸入性別System.out.println("請輸入性別:");String sex = sc.next();//3.2創建新的學生對象Student news =newStudent(id,name,age,sex);//3.3用新的對象替換舊的對象list.set(i,news);//3.4提示修改成功System.out.println("修改成功");//結束方法return;}}//4.如果不存在//提示修改失敗System.out.println("修改失敗,學號不存在");}}