Làm cách nào để lọc một mảng trong Java?Làm thế nào để lọc một mảng trong Java?
Tôi có một mảng của các đối tượng, ví dụ xe:
Class:
public class Car{
public int doors;
public Car(int d){
this.doors = d;
}
}
Sử dụng:
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);
Bây giờ tôi muốn lọc mảng xe, chỉ giữ lại 4 cửa ra vào và nhiều hơn nữa:
for(int i = 0; i<cars.length; i++){
if(cars[i].doors > 4)
//add cars[i] to a new array
}
}
Tôi nên làm như thế nào?
Trước khi tôi đã làm điều đó với một Vector:
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]);
}
}
Và sau đó tôi sẽ làm cho một mảng mới với kích thước của Vector. Sau đó, tôi sẽ lặp lại vectơ một lần nữa và điền vào mảng mới. Tôi biết đây là một thủ tục rất lớn cho một cái gì đó đơn giản.
Tôi đang sử dụng J2ME.
Thực sự quan trọng đối với các vùng chứa của bạn là mảng chứ không phải vectơ? Bởi vì vectơ chỉ nghe có vẻ thích hợp để sử dụng. – zneak
Vâng, tôi không thể sử dụng xe Vector trong môi trường của mình. Vì vậy, tôi phải làm cho phôi tất cả các thời gian, mà có thể gặp khó khăn ... –
hsmit