2016-12-04 1 views
-3

Ich versuche, eine Planung Gespräche, wo zwei nicht zur gleichen Zeit gehen können. Nachdem ich das erste Gespräch in den Scheduler-Plan gelegt habe, möchte ich jeden Vortrag in meiner Array-Liste durchgehen und prüfen, ob es mit dem letzten Gespräch im Zeitplan kompatibel ist.Vergleichen ersten Array in ArrayList mit Rest der Arrays

Ich denke, ich, indem Sie etwas entlang der Linien von

public Scheduler getSchedule(){ //Scheduling attempt 
     Scheduler plan = new Scheduler(events); 
     this.events.add(events.get(0)); 

     for (int i=0; i < events.size(); i++) 
     { 
      if(events.get(i).getStartTime().compareTo(events.get(l).getendTime()) > 0); 
      this.events.add(events.get(i)); 
     } 

     return plan; 
    } 

Dann in meiner Event-Klasse vergleichen kann ich

public int compareTo(Time that){    
    if(this.getHour() < that.getHour()) 
     return -1; 
    else if(this.getHour() > that.getHour()) 
     return 1; 
    else if(this.getMinute() < that.getMinute()) 
     return -1; 
    else if(this.getMinute() > that.getMinute()) 
     return 1; 
    else 
    return 0; 

} 

Die Probleme, ich sind immer The method getHour() is undefined for the type Event

+0

Wo ist die Methode getHour()? – Aaron

+0

Okay, ich werde es fragen. Hast du eine 'getHour()' Methode in der Event Klasse? – GurV

+0

Dann: * Das * ist vom Typ * Zeit * nicht Ereignis. Dieser Teil würde also auch nicht funktionieren. – GhostCat

Antwort

0

Seit getHour() ist privat, Sie können es nicht außerhalb der Klasse wie that.getHour() (in Ihrem Code) verwenden. Zugriffsmodifizierer von privat auf öffentlich ändern (nur ein Vorschlag)

Verwandte Themen