Bitte um Hilfe: Klassenarrays

fyeuser

Neues Mitglied
Hallo zusammen,

derzeit studiere ich Wirtschaftsinformatik an der Universität. In meiner Java Vorlesung wurde uns eine Aufgabe gestellt, an dessen Progammierung ich gerade scheitere. In meinem Quellcode sollen 2 Char Werte jeweils in eine Klasse mit den Variablen Name (für den char) und Anzahl (bei der Initialisierung immer 0) geschrieben werden.
Der Compiler gibt keinen Fehler aus, wenn ich jedoch die Klassen mit einer Schleife durchlaufe, gibt er immer nur zwei mal den letzten Eintragen Wert zurück.

Java:
public class Probe{
  
    public static void main(String[] args){
        char[] einigeZeichen = {'a', 'b'};
      
        Zeichen[] gefuellt = fuellen(einigeZeichen);
        for (int i = 0; i < gefuellt.length; i++){
            System.out.println(gefuellt._name);
        }

    }
  
    public static Zeichen[] fuellen(char[] meineZeichen){
        Zeichen[] y = new Zeichen[meineZeichen.length];
        for (int i = 0; i < meineZeichen.length; i++){
            y = new Zeichen();
            y._name = meineZeichen;
            y._anzahl = 0;
          
          
        }
        return y;
      
    }
    public static class Zeichen{
        public static char _name;
        public static int _anzahl;
      
      
    }
  
  
  
}

Ausgabe sollte sein:
a
b

Ist aber:
b
b


Über Ratschläge würde ich mich wirklich freuen,
LG :)
 

mrBrown

Super-Moderator
Mitarbeiter
Deine Variablen _name und _anzahl sind static, damit gibt es sie genau ein mal innerhalb deines Programms, mit y[i]._name = meineZeichen; setzt du also eine Variable von Zeichen.

Nimm einfach mal vor den beiden Variablen das static weg[/i]
 

Oben