H συνδυασμένη  διαπέραση πίνακα και  Vector αποτελεί μια βασική γνώση της JAVA αφού σας δίνει την δυνατότητα να ασχοληθείτε και να εντρυφήσετε περισσότερο στην τεχνοτροπία του αντικειμενοστρεφή προγραμματισμού.
Εδώ θα παρουσιάσουμε ένα τέτοιο παράδειγμα μέσα από την υλοποίηση μιας μεθόδου που θα διαπερνά ένα Vector με αντικείμενα ενώ στην συνέχεια θα διαβάζει ένα πίνακα του αντικειμένου και θα  εκτυπώνει το περιεχόμενο της κάθε θέσης του πίνακα.

Έστω η κλάση Α

public class Α{
private Vector <Β> aVector=new Vector();//υλοποίηση του vector

private String name;

public Α(String name){//κατασκευαστής
this.name=name;
}

public String getName(){
return name;
}
public void addToVector(Β element){//προσθήκη στοιχείου τύπου Β στο vector
aVector.add(element);
}
}

και η κλάση Β

public class Β {
private final int id;
private final String name;
private final int num;
int index=0;
private Β []table;


public B(int id, String name, int num){//κατασκευαστής
this.id=id;
this.name=name;
this.nums=num;
table=new B[num];//δημιουργία πίνακα. Κάθε αντικείμενο Β θα έχει και τον πίνακά του.

}

public int getId(){
return id;
}
public String getName(){
return name;
}
public void addToTable(B element){//Μέθοδος προσθήκης αντικειμένου Β στον πίνακα

this.table[index++]=element;
}

public B[]getTable(){//Μέθοδος επιστροφής του πίνακα
return table;
}

public String toString(){//Εκτύπωση λεπτομερειών του εκάστοτε αντικειμένου
return("   No id : "+this.getId()+", Name: "+this.getName());
}

έχοντας φτιάξει τις δύο αυτές κλάσεις θα προχωρήσουμε στην υλοποίηση της ζητούμενης μεθόδου για την συνδυασμένη διαπέραση πίνακα και Vector.

Μέσα στην κλάση Α προσθέτουμε την παρακάτω μέθοδο.

public void printTableinVector(){
Iterator it= emplo.iterator();//διαπέραση vector
while(it.hasNext()){element
B element=(B)it.next();//παίρνω το αντικείμενο του Vector

try{
// τραβώ τον πίνακα του αντικειμένου  και τον τοποθετώ σε προσωρινό πίνακα temp
B[]temp=element.getTable();

for(int i=0;i<=temp.length;i++){//διαπέραση πίνακα temp
//εκτύπωση των θέσεων του πίνακα και των λεπτομερειών 
//μέσα από την αυτόματη κλήση της toString στην κλάση Β
System.out.println(temp[i]);

}

catch (Exception ex){
System.out.print("");
}

}
}

Τώρα μπορείτε να δοκιμάσετε την εφαρμογή σας υλοποιώντας την κλάση main εντός της κλάσης Α

public static void main(String[] args) {
Α a1=new Α("Α1");//δημιουργία οντότητας τύπου Α

//δημιουργία οντοτήτων τύπου Β
Β element1 =new Β(123,"element1",4);
Β element2=new Β(234,"element2",3);
Β element3 =new Β(345,"element3", 1);
Β element4 =new Β(456,"element4", 2);
Β element5 =new Β(567,"element5",2);

//προσθήκη οντοτήτων στο πίνακα τους 
                element1.addToTable(element2);
                element1.addToTable(element3);
                element2.addToTable(element4);
                element4.addToTable(element5);

//προσθήκη οντοτήτων στον vector
a1.addToVector(element1 );
a1.addToVector(element2);
a1.addToVector(element3 );
a1.addToVector(element4 );
a1.addToVector(element5 );

//εκτύπωση με την χρήση της μεθόδου μας 
               a1.printTableinVector();
}

Ελπίζω το παράδειγμά μας να σας φανεί χρήσιμο. Καλή συνέχεια στην μελέτη σας.