Array nach Objektattribut durchsuchen

F

Facerolleye

Mitglied
Hallöchen!

Habe 2 Klassen geschrieben.
(Vorwarnung, bin Anfänger)

Java:
public class Bibliotheksverzeichnis {

    Buch[] Buecher = { new Buch("", "Mandy ", "Sult", " Theoretisches Testen gibt es nicht", 2016),
            new Buch("Ronald Dump, Mandy Sult", "", "", "Java mal ganz anders", 2010),
            new Buch("", "Ronald", "Dump", " Theoretisch gesagt, praktisch gemacht", 2015),
            new Buch("", "Anette", "Neumann", "Grundlagen theoretischer Physik", 2007),
            new Buch("", "Thomas", "Ulm", "Grundlagen der Programmierung mit Java", 2016) };

sowie

Java:
public class Buch {

    String Titel;
    String NachnameAutor;
    String VornameAutor;
    int Erscheinungsjahr;
    String Autoren;
    
    
    
    Buch ( String a, String b, String c, String d,int e){
        this.Autoren = a;
        this.VornameAutor = b;
        this.NachnameAutor = c;
        this.Titel = d;
        this.Erscheinungsjahr= e;
    }
    
    
    
    public String toString() {
        return String.format("%s%s %s : %s,%s",Autoren, VornameAutor, NachnameAutor, Titel, Erscheinungsjahr);
    }
}

Ich möchte nun in der Klasse Bibliotheksverzeichnis eine Methode entwerfen, die es mir ermöglicht in dem Array nach einem bestimmten Attribut zu suchen (bspw. ein Objekt, welches den Nachnamen "Dump" enthält" und mir dann der jeweilige String bzw. Objekt ausgespuckt wird.

Wie stelle ich das an?
 
Robat

Robat

Top Contributor
Zunächst solltest du dir für die Attribute der Buchklasse Getter Methoden schreiben, um auf die Werte zugreifen zu können.
Damit ist dein Vorhaben recht einfach umzusetzen. Dein Bibliotheksverzeichnis könnte so zB. eine Methode findeBuchMitTitel(String title) besitzen, welche dir das Buch mit dem passenden Titel zurückgibt. Diese Methode muss lediglich alle Bücher in deinem Buch-Array durchgehen und schauen, ob der Titel des aktuellen Buches gleich dem gesuchten Titel ist. Falls ja gibst du das Buch zurück, falls nein suchst du weiter.

BTW: Anstatt NachnameAuthor und VornameAuthor zu haben, könnte Author auch eine eigene Klasse sein. Außerdem gibt es in Java gewissen Konventionen. So werden Variablennamen zB in lowerCammelCase geschrieben (NachnameAuthor => nachnameAuthor).
 
F

Facerolleye

Mitglied
Das hat mir ziemlich geholfen! danke :)
das ist draus geworden, allerdings hast du mit den AutorenNamen recht, es gibt ja Bücher die mehrere Autoren haben,
entweder ich versuch irgendwie eine Stichwortsuche einzubauen.. oder schaue ob ich eine Klasse erstelle :-D

Code:
    public void SucheNachname(String Nachname) {
        for (int i = 0; i < Buecher.length; i++) {
        if (Nachname == Buecher[i].getNachnameAutor()) {
            System.out.println(Buecher[i]);
            
            }
        }
    }
 
F

Facerolleye

Mitglied
Ich hab schon gewusst dass man bei Strings Equals nimmt :-D Das war nur zu Testzwecke!
 
mihe7

mihe7

Top Contributor
(Vorwarnung, bin Anfänger)
Da kann man schon mal Entwarnung geben: Du hast nirgends static stehen und damit im Vergleich zu vielen anderen einen entscheidenden Vorsprung.

Drei Anmerkungen:
1. es gibt in Java Namenskonventionen. An die sollte man sich halten. D. h. Bezeichner für Variablen, Parameter und Methoden schreibt man in lowerCamelCase, Typnamen (Klassen etc.) in UpperCamelCase.
2. String a, String b, String c, String d,int e -> gib Deinen Parametern sinnvolle Namen. Du kannst sie auch so benennen wie die Instanzvariablen, dann musst Du im Code via this zuweisen:
Java:
private String name;
public Test(String name) {
    this.name = name; // this.name ist die Instanzvariable, name der Parameter
}
3. Deine Methode kann das Buch zurückgeben, anstatt nur etwas auf die Standardausgabe zu println. Der Vorteil ist, dass die aufrufende Methode mit dem Buch machen kann, was es will.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Ellachen55 Wie nach häufigste Werte im Array suchen? Java Basics - Anfänger-Themen 2
R Benutzereingaben als Array abspeichern nach Programmstart Java Basics - Anfänger-Themen 5
M Array nach String durchsuchen und zurückgeben Java Basics - Anfänger-Themen 16
O Array nach gleichen Zahlen prüfen und ausgeben Java Basics - Anfänger-Themen 6
M Array nach Zehnen durchsuchen. Java Basics - Anfänger-Themen 25
B Element in Array nach unten verschieben Java Basics - Anfänger-Themen 11
B Methoden Element aus einem Array löschen, Rest nach vorne verschieben? Java Basics - Anfänger-Themen 4
C eine diagonale von rechts nach links im 2d-array Java Basics - Anfänger-Themen 1
W Array nach String durchsuchen und Ausgeben Java Basics - Anfänger-Themen 8
C Abfrage nach einem Bild im Array Java Basics - Anfänger-Themen 9
J Array nach häufigkeit sortieren Java Basics - Anfänger-Themen 4
S Strings im Array nach Namen sortieren Java Basics - Anfänger-Themen 11
E Arrayeintrag nach Index löschen und Array kürzen Java Basics - Anfänger-Themen 3
B Object in Array nach Prüfung löschen Java Basics - Anfänger-Themen 13
L Array - Nach 2 gleichen Werten stoppen Java Basics - Anfänger-Themen 5
W Elemente in einem Array nach 'oben' verschieben Java Basics - Anfänger-Themen 9
D Eine Stelle eines Char- Arrays nach dem vorkommen in einem ganzem anderem Array überprüfen Java Basics - Anfänger-Themen 20
S Abfrage Objekt-Array nach Datentypen Java Basics - Anfänger-Themen 6
B Array nach dem Alphabet sortieren Java Basics - Anfänger-Themen 11
K OOP Objektgefülltes Array nach minWert durchsuchen Java Basics - Anfänger-Themen 5
W Array nach Elemenden die durch 2 teilbar sind durchsehen Java Basics - Anfänger-Themen 9
F.S.WhiTeY Mehrdimensionales array, größere zahlen von innen nach außen Java Basics - Anfänger-Themen 3
C String array nach File array Java Basics - Anfänger-Themen 15
C Datentypen int[][]-Array nach String[][]-Array konvertieren Java Basics - Anfänger-Themen 7
Y Array initialisieren, nach der Abfrage? Java Basics - Anfänger-Themen 3
B String Array nach Int Array Java Basics - Anfänger-Themen 3
D Array nach ungerade zahlen sortieren Java Basics - Anfänger-Themen 6
N Integer Array der Größe nach ordnen Java Basics - Anfänger-Themen 1
S Inhalt von Array nach Zahl durchsuchen Java Basics - Anfänger-Themen 5
A String Array: Suche nach Name -> Wert? Java Basics - Anfänger-Themen 3
S array nach 2 kriterien sortieren Java Basics - Anfänger-Themen 3
T 2D Array nach gleichen Werten durchsuchen Java Basics - Anfänger-Themen 6
A array nach initialisierung final machen? Java Basics - Anfänger-Themen 17
F Casten: Object nach Array Java Basics - Anfänger-Themen 10
P Nutzer entscheiden lassen, wie viele Zahlen dieser in ein Array eingeben möchte. Java Basics - Anfänger-Themen 3
J Array; Elemente kopieren Java Basics - Anfänger-Themen 15
JD_1998 Array-Position aus einer Methode in einer anderen ausgeben (Kurze Frage) Java Basics - Anfänger-Themen 2
JD_1998 Random Array sortieren mit Hilfe einer Methode Java Basics - Anfänger-Themen 4
M Objekte in Array speichern und ausgeben Java Basics - Anfänger-Themen 17
C Array-Werte werden gemischt, ohne Logik Java Basics - Anfänger-Themen 2
A eine neue normale String-Array von einer String-Array, die in for schleife ist, schaffen Java Basics - Anfänger-Themen 3
A keine Ergebnisse - String nummer in array nummer converting Java Basics - Anfänger-Themen 1
Z Char Array an zufälligen stellen mit einem "x" füllen. Java Basics - Anfänger-Themen 4
P JSON-Array auf Excel-Spalten verteilen? Java Basics - Anfänger-Themen 5
V Array aus Klasse um vererbte Elemente erweitern Java Basics - Anfänger-Themen 3
J Array über Getter erlangen Java Basics - Anfänger-Themen 34
K Übergabe von Werten (zweidimensionales Array) aus einer Methode an zweidimensionales Array in main() Java Basics - Anfänger-Themen 3
T Array füllen Java Basics - Anfänger-Themen 11
P Was genau bringt mir es ein Array in eine Liste zu bringen Java Basics - Anfänger-Themen 3
S Auf Array aus Objekten zugreifen? Java Basics - Anfänger-Themen 1
G Variablen Array Länge über den Konstruktor definieren Java Basics - Anfänger-Themen 4
A Speicherbereich von Array nicht zusammenhängend? Java Basics - Anfänger-Themen 8
S Java Array Probleme Java Basics - Anfänger-Themen 3
S Java Array Problem... Java Basics - Anfänger-Themen 2
C 2dimensionales array, Lagerverwaltung Java Basics - Anfänger-Themen 64
P Verschachtelte Array Liste Java Basics - Anfänger-Themen 2
P Performance Array und Liste Java Basics - Anfänger-Themen 13
M Array Summe bestimmen? Java Basics - Anfänger-Themen 14
parrot Array Übung Java Basics - Anfänger-Themen 25
parrot Array: Methode fügeHinzu Java Basics - Anfänger-Themen 13
parrot Array Java Basics - Anfänger-Themen 4
L 2 Dimensional Array werte überschreiben Java Basics - Anfänger-Themen 1
A char array wird überschrieben Java Basics - Anfänger-Themen 6
L Zufälliges 2d array befüllen Java Basics - Anfänger-Themen 27
L x und y Koordinaten in ein Array schreiben Java Basics - Anfänger-Themen 7
U Dreiecks-Matrix mit Array Java Basics - Anfänger-Themen 3
I Java zweidimensionales array befüllen mit for-schleife Java Basics - Anfänger-Themen 2
P Enums in Array abspeichern Java Basics - Anfänger-Themen 4
J Array Speicherplatz berechnen Java Basics - Anfänger-Themen 35
L Iterieren durch eine ArrayList. Integer Array wird übergeben Java Basics - Anfänger-Themen 17
Z Matrix Klasse mit Mehrdimensionalen Array (Addition, Multiplikation, to String) Java Basics - Anfänger-Themen 57
Z Methoden Array horizontal spiegeln Java Basics - Anfänger-Themen 19
K Array alle Werte aufsummieren und ausgeben Java Basics - Anfänger-Themen 6
J zweidimensionales Array Java Basics - Anfänger-Themen 1
A Array Elemente extrahieren ! Java Basics - Anfänger-Themen 4
M Quiz in Java programmieren mit Array Java Basics - Anfänger-Themen 8
A Array aufaddieren ! Java Basics - Anfänger-Themen 5
F Auto String mit Array Name aus Datei... oder so ähnlich Java Basics - Anfänger-Themen 4
H Ein gegebenes Int Array zu Zwei Arrays zurück geben Java Basics - Anfänger-Themen 6
J Elemente in einem 2D-Array summieren Java Basics - Anfänger-Themen 6
J String aus einem Array entfernen Java Basics - Anfänger-Themen 10
J Array differenzieren Java Basics - Anfänger-Themen 2
M Rekursive Prüfung ob ein Array sortiert ist... Java Basics - Anfänger-Themen 4
J Methoden set Methode array Java Basics - Anfänger-Themen 2
I Array übernimmt immer den letzten Input. Java Basics - Anfänger-Themen 14
E 2D Array - char durch die Matrix "wandern" lassen Java Basics - Anfänger-Themen 7
Kirby_Sike Anzahl vorkommender Elemente im Array zählen Java Basics - Anfänger-Themen 9
A Array problem Java Basics - Anfänger-Themen 16
NeoLexx Variable für Array wird nicht korrekt übergeben Java Basics - Anfänger-Themen 45
F Integerzahl als Array halten Java Basics - Anfänger-Themen 4
1 Array nimmt falschen Wert auf! Java Basics - Anfänger-Themen 2
J Neue Werte in ein Array hinzugeben Java Basics - Anfänger-Themen 8
I Array funktioniert nicht. Java Basics - Anfänger-Themen 2
J String Array zu Map<Character, List<Character>> mit Streams Java Basics - Anfänger-Themen 1
L Wie frage ich ab, ob in einem Array, Werte doppelt vorkommen? Java Basics - Anfänger-Themen 4
C 2-Dimensionales Array in Eindimensionales Array Java Basics - Anfänger-Themen 1
H Frage zum 2d Array Java Basics - Anfänger-Themen 1
L Array sortieren Java Basics - Anfänger-Themen 4
Kirby_Sike Fehlende Int Werte aus Array mit streams finden Java Basics - Anfänger-Themen 19
V Array auf eine Zahl durchsuchen Java Basics - Anfänger-Themen 15

Ähnliche Java Themen

Anzeige

Neue Themen


Oben