ho problemi a trovare elementi, qui è il mio codice:Trova elemento 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());
questa è la parte che ho problemi con, non so come cercare en tornare l'oggetto con endTime 2015/03/10. BTW questa è una riga di dati cvs:
UnitId;BeginTime;EndTime;Type;Min;Max;Sum
14100072; 2015/3/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());
}
}
ho provato questo, ma entrambi non ha funzionato:
int index = Collections.binarySearch(col, findThis.toString(), null);
System.out.println("Here is 'endTime= 2015-03-10' :");
System.out.println(index);
Vuol 'getEndTime' anche la resa di nuovo una stringa? – npinti
cosa restituisce x.getEndTime()? Ritorna, solo la data o insieme al tempo come '2015-03-10 7:13:20'? Se ritorna con il tempo, allora la condizione 'if (x.getEndTime(). Equals (findThis)) {' non passerà. – Parasu
Puoi mostrare il codice per 'EndTimeComparator'? – Parasu