Java常见集合例题(1、集合的嵌套遍历。2、获取随机数。3三种方式实现对集合中存储对象的遍历)

作业1:集合的嵌套遍历

package org.wests.HomeWork; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; /** * 1:集合的嵌套遍历 * 需求: *我们班有学生,每一个学生是不是一个对象。所以我们可以使用一个集合表示我们班级的学生。ArrayList * 但是呢,我们旁边是不是还有班级,每个班级是不是也是一个ArrayList。 * 而我现在有多个ArrayList。也要用集合存储,怎么办呢? * @author 代虎 * */ public class HomeWork01 { public static void main(String[] args) { List stuList = new ArrayList<>(); stuList.add(new Student("Apache", "Java")); stuList.add(new Student("Commons", "Java")); stuList.add(new Student("Github ", "Java")); List stuList2 = new ArrayList<>(); stuList2.add(new Student("张艺", "高三20班")); stuList2.add(new Student("张玥", "高三20班")); stuList2.add(new Student("贺州", "高三20班")); @SuppressWarnings("rawtypes") HashMap classMap = new HashMap<>(); classMap.put(stuList, stuList.get(0).getClassname()); classMap.put(stuList2, stuList2.get(0).getClassname()); @SuppressWarnings("rawtypes") Iterator it = classMap.keySet().iterator(); while(it.hasNext()) { System.out.println(it.next()); } } }


自定义的学生类:

package org.wests.HomeWork; public class Student { private String name; private String Classname; public Student() { } public Student(String name) { super(); this.name = name; } public Student(String name, String classname) { super(); this.name = name; Classname = classname; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getClassname() { return Classname; } public void setClassname(String classname) { Classname = classname; } @Override public String toString() { return this.Classname + ":"+ this.name; } }

【Java常见集合例题(1、集合的嵌套遍历。2、获取随机数。3三种方式实现对集合中存储对象的遍历)】
执行结果: Java常见集合例题(1、集合的嵌套遍历。2、获取随机数。3三种方式实现对集合中存储对象的遍历)
文章图片


作业二:获取10个1-20之间的随机数,要求不能重复
package org.wests.HomeWork; import java.util.HashSet; import java.util.Set; /** * 2:获取10个1-20之间的随机数,要求不能重复 * @author 代虎 * */ public class HomeWork02 { public static void main(String[] args) { Set set = new HashSet<>(); for(int i=0; i<1000; i++) { int number =(int)(Math.random()*20); set.add(number); Object[] array = set.toArray(); if(array.length>10-1) { break; } } System.out.println(set); } }


执行结果:
Java常见集合例题(1、集合的嵌套遍历。2、获取随机数。3三种方式实现对集合中存储对象的遍历)
文章图片


作业三:使用ArrayList集合存储自定义对象并遍历(三种方式去实现)
package org.wests.HomeWork; import java.util.ArrayList; import java.util.List; import java.util.ListIterator; /** * 3、使用ArrayList集合存储自定义对象并遍历(三种方式去实现) *分析思路: 1、建立自定义的对象Student *2、定义一个集合ArrayList *3、三种方法:A:普通for循环或者forEach语句 *B:Iterator/list.listIterator() *C:转化为数组,遍历 * * @author 代虎 * */ public class HomeWork03 { /* * A:普通for循环或者forEach语句 */ public static void method01(List list) {//for(int i=0; i void method02(List list) { ListIterator it = list.listIterator(); System.out.println("List的正向输出"); while(it.hasNext()){ System.out.println(it.next()); } System.out.println("List的反向输出"); while(it.hasPrevious()) { System.out.println(it.previous()); } } public static void method03(List list) { Object[] arr = list.toArray(); for(int i=0; i list = new ArrayList<>(); System.out.println("My favorite basketball star:"); list.add(new Student("尼克杨", "勇士")); list.add(new Student("库里", "勇士")); list.add(new Student("汤普森", "勇士")); list.add(new Student("欧文", "凯尔特人")); System.out.println("方法一"); method01(list); System.out.println("方法二"); method02(list); System.out.println("方法三"); method03(list); } }


执行结果:
Java常见集合例题(1、集合的嵌套遍历。2、获取随机数。3三种方式实现对集合中存储对象的遍历)
文章图片


    推荐阅读