2016-10-13 3 views
-4

Ich habe eine ArrayList mit fünf Objekten, wo ich jetzt alle Elemente finden müssen, wo der Nachname Smith ist und eine andere Klasse haben, um es zu drucken. Wie mache ich das? Ich habe drei Klassen: Eine Schülerklasse, ein Klassenzimmer und eine Driver-Klasse, die eine Untersuchungsmethode enthält. Ich muss eine Methode namens: withName (String-Name) in der Klasse namens "Klassenzimmer" und dann durch den Prüfungsmodus gedruckt haben. Wie mache ich das?Finden Sie Elemente in Array-Liste mit bestimmten Eigenschaften

Zum einen habe ich eine Methode getName() in der Schülerklasse:

public String getName(){ 

    return name; 
} 

Dann mit Ich habe versucht:

public Student withName(String name){ 

    for(Student s : students){ 
     if(s != null && m.getName().contains("Smith")) 
      return s; 
    } 
    return null; 
} 
+1

Sie meinen Java ?? –

+0

Ich nehme an, Sie wollten den 'java' Tag benutzen, nicht' javascript' – naomik

+0

Sie scheinen zwei verschiedene Übungen zu vermischen. Was hat 'withInstrument' mit der Frage nach' withName' zu ​​tun? – Barmar

Antwort

0

dies eine Antwort auf Ihre Frage, aber ich werde nicht zum Löffel füttern Sie die Lösung.

  1. Read This API Page.
  2. Implementieren Sie eine von diesen: Komparator <Student>.
  3. Verwenden Sie Ihren Vergleicher, um passende Studenten zu finden.
+0

Ich habe bereits den Vergleich implementiert: – Ann

+0

Ich habe compareTo bereits implementiert durch: – Ann

+0

Ich habe versucht: public class Student implementiert Vergleichbar {... Allerdings verstehe ich nicht ganz, wie man eine Person mit dem Nachnamen Smith durch den Vergleich von Objekten auf diese Weise bekommt? Unsere Lehrerin sprach davon, Gleichgestellte in der Klasse einzusetzen, also bin ich mir sicher, dass es der richtige Weg ist. Ich kann einfach nicht sehen, wie – Ann

0

versuchen, das zu tun:

// find all elements where the surname is ... 
    public List<Student> withName(String name) { 
     List<Student> auxList = new ArrayList<Student>(); 

     for (Student s : students) { 
      if (s != null && s.getName().contains("Smith")) 
       auxList.add(s); 
     } 

     return auxList; 
    } 
Verwandte Themen