Vergleiche Objekt mit den Daten ( implements Comparator)

Ich habe ein java-Personen-Objekt :

public class People {

        String lastname;
        String firstname;
        String gender;
        String datebirth;
        String fcolor;

        public People(String lastname, String firstname, String gender,String datebirth, String fcolor) {
                this.lastname = lastname;
                this.firstname = firstname; 
                this.gender = gender;
                this.datebirth = datebirth;
                this.fcolor = fcolor;
        }
        public String getLastname() {
                return lastname;
        }
        public String getFirstname() {
                return firstname;
        }
        public String getGender() {
                return gender;
        }
        public String getFcolor() {
                return fcolor;
        }
        public String getDatebirth() {
                return datebirth;
        }        
}

Ich will einen Komparator zum vergleichen von datebirth (datebirth ist manchmal in diesem format "2/13/1943", manchmal in dieses format "2-13-1943", können Sie mir helfen, wie es zu implementieren.

Begann ich , aber verwirrt :

import java.util.Date;
import java.text.SimpleDateFormat;
import java.util.Comparator;
import java.text.DateFormat;

public class CompareDateBirth implements Comparator<People>{

        public int compare(People p, People q) {

                 DateFormat df = new SimpleDateFormat("dd-MM-yyyy");
                 Date Pdate = null;
                 Date Qdate= null;
                    try {
                    Pdate = df.parse(p.getDatebirth());
                    Qdate = df.parse(q.getDatebirth());
                    } catch (Exception e) {
                    e.printStackTrace();
                    }    
                      return Pdate.compareTo(Qdate) > 0 ? 1 : 0;
        }
}
InformationsquelleAutor akram | 2011-12-08
Schreibe einen Kommentar