-1
私は幸運の車輪を作っています。ユーザーがそこに何人のプレーヤーがいるのかを入力し、forループのコンストラクタが多くのプレーヤーを作ります。私はちょうど彼らがforループで複数の異なる名前のオブジェクトを作る
プレーヤーコンストラクタ
public Player(String n) {
money = 0.0;
name = n;
}
問題
public static void main(String[] args) {
Scanner kb = new Scanner(System.in);
int playerAmount = 0;
do {
if(playerAmount > 5) System.out.println("Thats too many.");
System.out.print("How many players(max 5): ");
playerAmount = kb.nextInt();
} while(playerAmount > 5 || playerAmount == 1);
for(int i = 1; i <= playerAmount; i++) {
System.out.print("Player " + i + " name: ");
String name = kb.next(); // name for the construction of player
Player player1 = new Player(name); // where i want to construct differeing number of different objects
}
}
オブジェクトの配列が必要です。 –
配列のようなデータ構造にします。 'player1'は各反復の後すぐに失われます。 – Li357
オブジェクトには名前がありません。意味がありません。変数はありますが、オブジェクトを複数の変数に割り当てることができるので、Horace、Bill、Sharonという名前のPlayer変数があり、そのオブジェクトの「名前」はすべて同じオブジェクトに割り当てられています。再び、それは理にかなっていません。重要なのは**参照**と*プロパティ*です。オブジェクトに名前を関連付けるにはオブジェクト(おそらくArrayListまたはHashMap)にアクセスするための参照とオブジェクトのクラスのString nameプロパティを取得します。 –