2016-05-23 10 views
2

Ich stehe vor einem Problem mit statischen Arraylists.Static ArrayList - erweiterte Schleife füllen

Ich habe eine Spieler-Klasse, die eine Zeichenfolge nimmt.

Ich habe eine statische Arraylist der Spieler und eine statische Reihe von Strings.

static final ArrayList <Player> MY_PLAYER_LIST = new ArrayList<Player>(); 
static final String [] TEST_PLAYER_LIST = {"adam", "eve", "john", "mary",}; 

Ich habe eine Funktion, die die Arraylist füllt.

Aber die Ausgabe, die ich bekomme, ist;

Before - 0 
Player: adam 
Player: eve 
Player: john 
Player: mary 
After - 4 
Player: mary 
Player: mary 
Player: mary 
Player: mary 

Kann mir bitte jemand helfen, zu verstehen, was ich falsch mache?

+3

'myPlayerName' in' Player' Klasse ist wahrscheinlich statisch. Entfernen Sie das statische Keyword. – Eran

+2

bitte auch die Deklaration von myPlayerName anzeigen –

+1

Ist 'myPlayerName' nicht statisch in' Player'? – Serg

Antwort

5

Stellen Sie sicher, dass der Player-Klasse sieht wie folgt aus:

public class Player{ 
    private String myPlayerName; 
    private int myPlayerScore; 
    public Player (String s) {  
     myPlayerName = s; 
     myPlayerScore = 0; 
    } 
    public String getMyPlayerName() { 
     return myPlayerName; 
    }   
} 
+1

dies wird funktionieren, wie es scheint, dass der playerName ist statisch – Supahupe

+1

Dies sollte Mark richtige Antwort sein. – mubeen

+0

Danke Safwan - ja es war statisch in der Spielerklasse, die mich vermasselt hatte – Walkerbo

Verwandte Themen