Objektarray Ausgabe

Michi_1989

Mitglied
Moin,

ich habe noch ein paar Probleme mit dem Objektarrays. Habe mal zum Üben eine Class Spiele geschrieben und will die Objekte in ein Array packen und wiedergeben. Allerdings bekomme ich nicht denn Inhalt sondern nur Null als Ergebnis, obwohl ich das Objekt nochmal im Array angelegt habe. Vielleicht wisst ihr, wo mein Fehler ist.
Gruß Michi

Java:
package spieleverwaltung;

class Spiele
{    
    public int altersfreigabe;
    public String name;
    public String gerne;
    Spiele [] Spielearray = new Spiele [5];
      
    public Spiele ausgabe()
    {
        return Spielearray[0];
    } 
    
}
public class Programmstart 
{   
    public static void main(String[] args) 
    {
        Spiele a0 = new Spiele();
        Spiele a1 = new Spiele();
        Spiele a2 = new Spiele();
        Spiele a3 = new Spiele();
        Spiele a4 = new Spiele();
        System.out.println(a0);
        a0.altersfreigabe = 18;
        a0.name = "Doom 3";
        a0.gerne = "Ego-Shooter";
        
        a1.altersfreigabe = 16;
        a1.name = "Skyrim";
        a1.gerne = "RPG";
        
        a2.altersfreigabe = 18;
        a2.name = "Crysis 2";
        a2.gerne = "Ego.Shooter";
        
        a3.altersfreigabe = 18;
        a3.name = "M&M Dark Messiah";
        a3.gerne = "RGP";
        
        a4.altersfreigabe = 16;
        a4.name = "Black Mirror 3";
        a4.gerne = "Adventure";
        
        System.out.println(a0.altersfreigabe+" "+a0.name+" "+a0.gerne);
        
        a0.Spielearray [0] = new Spiele();
        a0.Spielearray[0].altersfreigabe = a0.altersfreigabe;
        System.out.println(a0.Spielearray[0].ausgabe());
    }
}
 
N

nillehammer

Gast
Du hast den Array initialisiert. D.h. Du hast Java gesagt, dass Du Speicherplatz für 5 Spieleobjekte reservieren willst. Du musst den Array aber auch füllen. Das passiert bei Dir nicht.
 

truesoul

Top Contributor
Naja dein Konzept ist auch sehr fragwürdig.
Warum sollte Spiele eine Liste von sich selbst halten?

Deine eher eine Klasse die eine Liste von Spielen hält.
Ausserdem solltest du unbedingt mit setter und getter Arbeiten.

Ausserdem solltest du das Array nicht nur initialisieren sondern auch direkt mit entsprechenden Objekten befüllen. Das geschah bei dir nicht.
 

Michi_1989

Mitglied
Ich weiß, hatte zuvor auch alle drinn, hatte es allerdings jetzt anderes geamacht, sodass ich nicht mehr nur die speicheradresse bekomme. Das soll jetzt erst einmal ein Test sein. Wenns funktioniert, dann mache ich auch die anderen Plätze voll. Ich weiß allerdings echt nicht, warum ich Null bekomme obwohl ich doch das Array mit den Objekt angelegt habe . Er müsste mir doch den einen belegten Platz mit dem Objektinhalt anzeigen , oder sehe ich das falsch?

Ach, fülle ich die nicht indem ich sage, dass z.B. Spielearray [0] = sound so ist ?

Sry, das ist quasi mein erstes Experiment mit der OOP. Aber eigentlich will ich nur, dass die drei Eigenschaften der 5 Spiele im Array ausgegeben werden. Wie ich das nun genau mache, weiß ich halt nur teilweise. Wäre nett wenn mir einer für ein Spiel ein Beispiel geben könnte.
 
Zuletzt bearbeitet:
N

nillehammer

Gast
Ach, fülle ich die nicht indem ich sage, dass z.B. Spielearray [0] = sound so ist ?
Doch eigentlich schon. Aber jetzt kommt Dein krudes Design dir in die Quere. Du lässt Dir nämlich mit ausgabe() Spielearray[0] von new Spiele() anzeigen und DAS ist nicht gefüllt.
 

Michi_1989

Mitglied
Hmm okay, so wie ich das verstehe, dann soll ich das Array direkt ausgeben lassen. Also ohne auf ausgabe zuzugreifen. Dann bekomme ich aber nur die Adresse. Wenn mir das einer noch erklären kann wäre es super. Ansonsten schaue ich gleich mal ins Handbuch wegen den gettern..
 
N

nillehammer

Gast
So und nu, weil ich grad nen Guten habe, mal Dein Code etwas refactort, damit er funktioniert:
Java:
package spieleverwaltung;
 
public class Spiel
{    
    public int altersfreigabe;
    public String name;
    public String genre;

    public Spiel() {
       this(0,null,null);
    }

    public Spiel(int altersfreigabe, String name, String genre) {
      this.altersfreigabe = altersfreigabe;
      this.name = name;
      this.genre = genre;
    }
    
     // Überschreib die toString-Methode, dann kannst du es direkt in System.out.println benutzen!
    @Override
    public String toString()
    {
       // Mal schnell mit + konkateniert. ToStringBuilder von Apache commons macht das besser!
        return getClass.getCanonicalName() + ":altersfreigabe=" + this.altersfreigabe + ",name=" + this.name + ",genre=" + this.genre;
    } 
    
}
public class SpieleDatenbank {

   private Spiel[] = spiele;

   public SpieleDatenbank(Spiel[] spiele) {
      this.spiele = spiele;
   }

   @Override
   public String toString() {
      // Kannst hier auch händisch iterieren und die Ausgabe basteln oder einfach eine Methode der JSE
      // benutzen.
      Arrays.deepToString(this.spiele);
   }
}
public class Programmstart 
{   
    public static void main(String[] args) 
    {
        Spiele a0 = new Spiele(18,"Doom", "Ego-Shooter");
        System.out.println(a0);

        Spiele a1 = new Spiele(16, "Skyrim", "RPG");
        System.out.println(a1);

         SpieleDatenbank db = new SpieleDatenbank(new Spiel[]{a0,a1});
         System.out.println(db);
    }
}
 
Zuletzt bearbeitet von einem Moderator:
N

nillehammer

Gast
bekomme ich aber nur die Adresse. Wenn mir das einer noch erklären kann wäre es super.
Hatte Deine neue Frage nicht gelesen. Um was anderes als die Speicheradresse eines Objekts zu sehen, musst Du die toString-Methode überschreiben (siehe der Code in meinem letzten Post).
 
Zuletzt bearbeitet von einem Moderator:

Michi_1989

Mitglied
Boa, besten Dank. Das ist echt nett von dir. :) Kann damit größtenteils was anfangen, this hatten wir auch in der Vorlesung. Ich schaue mir das nochmal ein wenig an und dann versuche ich das so ähnlich zu schreiben. Ein schönen Tag noch.
Gruß Michi 1989
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Objektarray - Speicherverschwendung? Java Basics - Anfänger-Themen 5
S Methoden Objektarray(erfassen) Java Basics - Anfänger-Themen 18
dapzoo Compiler-Fehler Beim Werte verteilen in Objektarray NullPointerException Java Basics - Anfänger-Themen 4
B Objekte in ObjektArray speichern und ausgeben Java Basics - Anfänger-Themen 5
w0ddes ImageIcon in Objektarray (TableModel) einfügen. Java Basics - Anfänger-Themen 7
G Objektarray inerhalb des Konstruktors erstellen Java Basics - Anfänger-Themen 2
D Objektarray sortieren Java Basics - Anfänger-Themen 10
G Objektarray mit sich selbst rekombinieren Java Basics - Anfänger-Themen 5
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
M Methode zielnah zeigt das gewünschte Ausgabe nicht an Java Basics - Anfänger-Themen 3
M Ausgabe beim Overloading Java Basics - Anfänger-Themen 3
H Frage zur Ausgabe Java Basics - Anfänger-Themen 4
H Java-Programm zur Ausgabe von Zuständen Java Basics - Anfänger-Themen 80
S Einfach-Verkettete-Listen Ausgabe zeigt nur 1. und letzte instanz Java Basics - Anfänger-Themen 2
T float soll durch schleife die größte mögliche Zahl herausfinden, Ausgabe ist aber "Infinity" Java Basics - Anfänger-Themen 1
B Binärzahlen auflisten, falsche Ausgabe? Java Basics - Anfänger-Themen 1
M Java Ausgabe der höchsten Zahl Java Basics - Anfänger-Themen 14
M Erste Schritte While Schleife / Ausgabe von buchstabe & ASCII Wert Java Basics - Anfänger-Themen 4
nelsonmandela Problem bei Ausgabe einer Switch - Case Funktion Java Basics - Anfänger-Themen 5
W Streams in Java und was bedeutet meine Konsolen-Ausgabe? Java Basics - Anfänger-Themen 4
B Automatisierte Ausgabe (Schleife, If-Abfrage?) Java Basics - Anfänger-Themen 24
C 2D Array Ausgabe mit for-Schleife i,j Java Basics - Anfänger-Themen 4
B Deadlock verstehen der Ausgabe! Java Basics - Anfänger-Themen 12
Lion.King Ausgabe mit Eigenschaften Java Basics - Anfänger-Themen 4
D Java Pattern mit X Ausgabe Stern Java Basics - Anfänger-Themen 4
J In der Ausgabe wird ohne Eingabe in den else Block gesprungen. Java Basics - Anfänger-Themen 0
J In der Ausgabe wird ohne Eingabe in den else Block gesprungen. Java Basics - Anfänger-Themen 5
Xaver code Tastatur ausgabe Java Basics - Anfänger-Themen 4
R Anfänger: Ausgabe kommt minus raus? Java Basics - Anfänger-Themen 6
K Leerzeile in Konsolen-Ausgabe Java Basics - Anfänger-Themen 4
K Zweite Ausgabe von vererbten Klassen Java Basics - Anfänger-Themen 3
Q return Ausgabe Java Basics - Anfänger-Themen 4
C Java Arrays - Ausgabe in Methode Java Basics - Anfänger-Themen 12
D Best Practice Ausgabe über direkte Ausgabe oder try-catch? Java Basics - Anfänger-Themen 13
S Ausgabe des Variablenwerts Java Basics - Anfänger-Themen 10
I Ausgabe nicht nur senkrecht sondern auch waagerecht. Java Basics - Anfänger-Themen 2
paulen1 Methoden Unerwünschte Ausgabe bei System.out.print in For-Schleife Java Basics - Anfänger-Themen 8
C Ausgabe boolean return ((n==9)||(n==0)); Java Basics - Anfänger-Themen 13
F Double Ausgabe nicht wissenschaftlich Java Basics - Anfänger-Themen 16
danieldemetry Java - Graph Komponenten - Ausgabe Java Basics - Anfänger-Themen 0
S Fragen zu Ausgabe double und float Java Basics - Anfänger-Themen 3
B Ausgabe in TextArea funktioniert nicht Java Basics - Anfänger-Themen 2
D BigDecimal Ausgabe sehr lang. Java Basics - Anfänger-Themen 2
J String Ausgabe Java Basics - Anfänger-Themen 2
TimoN11 IntelliJ , Ausgabe von einem Quellcode in Eingabe eines Quellcodes Java Basics - Anfänger-Themen 1
Kalibru Problem bei Ausgabe von Objekt Java Basics - Anfänger-Themen 1
KogoroMori21 Array-Ausgabe Java Basics - Anfänger-Themen 6
JaVaN0oB Wörterraten - Falsche Ausgabe, String/Chars vergleichen Java Basics - Anfänger-Themen 2
E Ausgabe überschreiben Java Basics - Anfänger-Themen 15
D Ausgabe von Array Java Basics - Anfänger-Themen 2
U Ausgabe Java Basics - Anfänger-Themen 4
J Buchstabenhäufigkeit mit Array und Ausgabe des häufigsten Buchstaben Java Basics - Anfänger-Themen 25
V Multiplikationstafel - Ausgabe Java Basics - Anfänger-Themen 4
L Warum ist die Ausgabe anders als das was im Bezeichner steht? Java Basics - Anfänger-Themen 4
M In gleicher zeile hinter ausgabe noch etwas ausgeben Java Basics - Anfänger-Themen 1
newcomerJava Nach doppelter Zahl eine Ausgabe Java Basics - Anfänger-Themen 10
H Falsche Ausgabe Java Basics - Anfänger-Themen 2
P Klassenübergreifende Ausgabe mittels "getter" nicht möglich Java Basics - Anfänger-Themen 21
R Call-by-Value, Call-by-Reference, Call-by-Name Ausgabe Java Basics - Anfänger-Themen 1
JavaClap "Bruchrechner" liefert Fehler/keine Ausgabe bei Addition und Subtraktion Java Basics - Anfänger-Themen 0
D Warum erfolgt folgende Ausgabe und warum? Java Basics - Anfänger-Themen 4
C Ausgabe in der Konsole Java Basics - Anfänger-Themen 11
M Problem bei Ausgabe Java Basics - Anfänger-Themen 7
C Konvertierung des int typs in den double typ für die Ausgabe mit Nachkommastellen Java Basics - Anfänger-Themen 4
A Ausgabe mit boolean Java Basics - Anfänger-Themen 3
K Probleme bei der Ausgabe - komme nicht weiter :/ Java Basics - Anfänger-Themen 15
G Problem bei der Ausgabe einer Main Claase Java Basics - Anfänger-Themen 7
Y Methode + Parameters + Ein und Ausgabe Java Basics - Anfänger-Themen 1
K Methodenaufruf /-ausgabe Java Basics - Anfänger-Themen 5
A Wiederholte Ausgabe vermeiden Java Basics - Anfänger-Themen 16
B Collections Objektreferenz-ID in der Ausgabe (Comparator Interface) Java Basics - Anfänger-Themen 2
M Wie analysiert JSON eine toString-Ausgabe ? Java Basics - Anfänger-Themen 1
T Vererbung Verschiedene Fahrzeugtypen mit unterschiedlicher Ausgabe Java Basics - Anfänger-Themen 17
T Ausgabe einer for Schleife Java Basics - Anfänger-Themen 2
S Elemente eines Arrays bei Ausgabe auslassen Java Basics - Anfänger-Themen 2
M Ausgabe einer Liste welche mehrere Stacks enthält Java Basics - Anfänger-Themen 3
T Text-Ausgabe für Textadventure - Organisation Java Basics - Anfänger-Themen 5
G Unterklassen (Klasse für Ausgabe) Java Basics - Anfänger-Themen 4
N Eingabe des Users direkt hinter die Ausgabe Java Basics - Anfänger-Themen 3
J Methode zur Ausgabe eines Dreiecks aus Sternen schreiben? Java Basics - Anfänger-Themen 2
ZH1896ZH Wieso diese Ausgabe?? Java Basics - Anfänger-Themen 10
J Fragen zum Code aus dem Buch "Schrödinger programmiert Java 2.te Ausgabe" Java Basics - Anfänger-Themen 6
B Keine Ausgabe .. Woran liegt das? Ich komme nicht weiter Java Basics - Anfänger-Themen 14
K Rechtsbündige Ausgabe von Zahlen Java Basics - Anfänger-Themen 6
V Erste Schritte for-Schleife; Ausgabe soll alle 5 Sekunden erfolgen. Java Basics - Anfänger-Themen 4
X Threads Zwei Threads, aber doppelte Ausgabe verhindern (synchronized) Java Basics - Anfänger-Themen 54
J Ausgabe Gesamtpreis Java Basics - Anfänger-Themen 39
E Variablen in formatierter Ausgabe Java Basics - Anfänger-Themen 15
B HQL / Hibernate, GroupBy und Ausgabe als Double Java Basics - Anfänger-Themen 1
J StrinBuffer in der Ausgabe Java Basics - Anfänger-Themen 4
H ausgabe? Java Basics - Anfänger-Themen 32
B Ausgabe Zahlenreihe Horizontal Java Basics - Anfänger-Themen 3
V Neue Ausgabe von toString nach Methodenaufruf Java Basics - Anfänger-Themen 9
N Wochentagberechner Ausgabe funktioniert nicht Java Basics - Anfänger-Themen 7
K Array Ausgabe Java Basics - Anfänger-Themen 2
L Datentypen Ausgabe von eigenem Datentypen Java Basics - Anfänger-Themen 2
C 1x1 Ausgabe auf dem Bildschirm Java Basics - Anfänger-Themen 3
L Fehler im Programm bei Ausgabe Java Basics - Anfänger-Themen 21
J Doppelte Ausgabe erzeugen Iterator Java Basics - Anfänger-Themen 6
F Warum ist die Ausgabe hier 1? Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben