import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
class Test{
public static void main(String[] args) {
A a1 = new A();
B b1 = new B();
a1.setB(b1);
b1.setI(1);
A a2 = new A();
B b2 = new B();
a2.setB(b2);
b2.setI(2);
List list= new ArrayList();
list.add(a1);
list.add(a2);
Iterator it = getValueInList(list,"b","i").iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
public static List getValueInList(List list,String field,String name){
List l = new ArrayList();
Iterator it = list.iterator();
while(it.hasNext()){
l.add(getValueInField(it.next(),field,name));