tôi có khó khăn khi tìm các yếu tố, đây là mã của tôi:Tìm phần tử trong ArrayList Java
public static void main(String[] args) {
BufferedReader br = getFileReader("reader.csv");
ArrayList<Monitoring> col = getCollection(br);
//sort the collection on 'beginTime'
for (Monitoring x : col)
System.out.println(x.toString());
BeginTimeComparator beginTime = new BeginTimeComparator();
Collections.sort(col,beginTime);
System.out.println("Begin time:");
for (Monitoring x : col)
System.out.println(x.toString());
Đây là phần tôi gặp khó khăn với, tôi không biết làm thế nào để tìm kiếm en lấy lại đối tượng với EndTime 2015-03-10. BTW đây là một dòng dữ liệu cvs:
UnitId;BeginTime;EndTime;Type;Min;Max;Sum
14100072; 2015/03/10 07: 12: 20; 2015/03/10 7: 13: 20; Gps/GpsAccuracyGyroBias; 0; 0; 0
//find the amount of elements that were sent on 'endTime' = 2015-03-10 (just the date)
EndTimeComparator endTime = new EndTimeComparator();
String findThis = "2015-03-10";
Collections.sort(col, endTime);
for(Monitoring x : col){
if(x.getEndTime().equals(findThis)){
System.out.println("Here is 'endTime= 2015-03-10' :");
System.out.println(x.toString());
}
}
tôi đã cố gắng này, nhưng cả hai đã không làm việc:
int index = Collections.binarySearch(col, findThis.toString(), null);
System.out.println("Here is 'endTime= 2015-03-10' :");
System.out.println(index);
Liệu 'getEndTime' cũng mang lại một chuỗi? – npinti
x.getEndTime() trả về cái gì? Nó có quay trở lại, chỉ là ngày hoặc cùng với thời gian như '2015-03-10 7:13:20'? Nếu nó trả về cùng với thời gian, thì điều kiện 'if (x.getEndTime(). Bằng (findThis)) {' sẽ không vượt qua. – Parasu
Bạn có thể vui lòng hiển thị mã cho 'EndTimeComparator'? – Parasu