2016-04-26 7 views
0

私は単純なゲームのために選手のArraylistを作りました。私はそれを再生するためにコンソールwhosに表示する必要があります。私は名前とスコアを格納するクラス "Player"を持っています。また、各プレーヤーのこれらの値を定義するコンストラクタです。 ArrayListのインデックスからのプレイヤーの名前だけを取得する方法を見つけ出すことはできません。..インデックスを知ることだけからオブジェクトの値を取得する方法ArrayList、Java?

package Øving5; 

import java.util.ArrayList; 
import java.util.Scanner; 

public class Game { 


    public static void Round() { 
     ArrayList<Player> players = new ArrayList<Player>(); 
     Scanner in = new Scanner(System.in); 
     System.out.print("Write down the number of players: "); 
     int numplayers = in.nextInt(); 

     for (int i = 0; i < numplayers; i++) 
      players.add(new Player()); 

     for (int i = 0; i < numplayers; i++) 
      theplayer = players.get(i); // Don't know what to do here.. 
     System.out.print("It is " + toString(theplayer) + "'s turn."); 

    } 

    public static void main(String[] args) { 

     Round(); 


    } 
} 

答えて

0

あなたはこれだけ、その名前のためにそれを聞いて、ArrayListのうち、Playerオブジェクトを取得している。

for(Player p : players) { 
    System.out.println(p.getName()); 
} 

ここでは、プレーヤーのクラスにプレーヤーの名前を返すgetName()メソッドがあるとします。

同様に、あなたは、特定のインデックスでプレイヤーの名前を印刷することができます。すべての

System.out.println(players.get(2).getName()); 
0

まず、あなたのプレーヤーのクラスに任意の情報を追加していません。あなたはそれはちょうど空のクラスを

spillerne.add(new Player()); 

作成されない各プレーヤーのための

。次に、あなたのコードは

for (int i=0; i<numplayers; i++) 
    spillerne.add(new Player("Player " + i)); // Here you can also use user input. This is just an example of giving a name 

for (int i=0; i<numplayers; i++) 
    System.out.print("Det er "+ spillerne.get(i).getName + "sin tur."); 
となり、多かれ少なかれ、この

class Player { 
    private String name; 
    public Player(String name) { 
    this.name = name; 
    } 

    public String getName() { 
    return this.name 
} 

のようなクラスのプレーヤーを作成する必要があります

関連する問題