Jak filtrować tablicę w Javie?
Jak mogę filtrować tablicę w Javie?
Mam szereg obiektów, na przykład samochody:
Klasa:
public class Car{
public int doors;
public Car(int d){
this.doors = d;
}
}
Posługiwać się:
Car [] cars = new Cars[4];
cars[0] = new Car(3);
cars[1] = new Car(2);
cars[2] = new Car(4);
cars[3] = new Car(6);
Teraz chcę filtrować szereg samochodów, zachowując tylko 4 drzwi i więcej:
for(int i = 0; i<cars.length; i++){
if(cars[i].doors > 4)
//add cars[i] to a new array
}
}
Jak mam to zrobić?
Zanim zrobiłem to za pomocą wektora:
Vector subset = new Vector();
for(int i = 0; i<cars.length; i++){
if(cars[i].doors > 4)
//add cars[i] to a new array
subset.addElement(cars[i]);
}
}
A potem zrobiłbym nową tablicę o rozmiarze wektora. Następnie ponownie zapętlę wektor i wypełnię nową tablicę. Wiem, że to bardzo duża procedura dla czegoś prostego.
Używam J2ME.