猿问

java 集合里的元素是集合,怎么遍历里面的集合?

List list = new ArrayList();
List<User> userList = new ArrayList();//用于接收从数据库查出的数据
List<Department> dpList = new ArrayList();//用于接收从数据库查出的数据
list.add(userList);
list.add(dpList);
需要将list传到另个方法里
怎么用list遍历userList和dpList?
12345678_0001
浏览 558回答 7
7回答

万千封印

怎么遍历list 就怎么遍历 userList

UYOU

foreach(var n in list.userlist){} foreach(var m in list.dpList){}

慕无忌1623718

这是什么东西?为啥还有var?

月关宝盒

for(int i=0;i<list.size();i++){   List l = list.get(i);   for(Object o:l){      if(o instanceof User){User user = (User) o; System.out.println(user); } if(o instanceof Department){Department dep = (Department) o; System.out.println(dep); }   } }

汪汪一只猫

这跟楼上讲的差不多,我按楼上的思路写出来了,嘿嘿

慕桂英4014372

你可以把两个list放在map里,不一定要放在list里,传一个map就好了...

哔哔one

1 public class MyTests 2 { 3 public static void main(String[] args) 4 { 5 List<List<Reportable>> reportables = new ArrayList<List<Reportable>>(); 6 7 List<Reportable> users = new ArrayList<Reportable>(); 8 users.add(new User()); 9 users.add(new User()); 10 users.add(new User()); 11 12 List<Reportable> departments = new ArrayList<Reportable>(); 13 departments.add(new Department()); 14 departments.add(new Department()); 15 departments.add(new Department()); 16 17 reportables.add(users); 18 reportables.add(departments); 19 20 for (List<Reportable> reports : reportables) 21 { 22 for (Reportable element : reports) 23 { 24 element.printMe(); 25 } 26 } 27 } 28 } 29 30 interface Reportable 31 { 32 public void printMe(); 33 } 34 35 class User implements Reportable 36 { 37 @Override 38 public void printMe() 39 { 40 System.out.println("I am a user."); 41 } 42 } 43 44 class Department implements Reportable 45 { 46 @Override 47 public void printMe() 48 { 49 System.out.println("I am a department"); 50 } 51 }
随时随地看视频慕课网APP

相关分类

Java
我要回答