次のプログラムは、プレイヤーの数とその名前を質問します。私はarraylistに名前を入れて、彼らのidによってそれらを戻したいと思う。id-javaによる検索arraylist
私はidで検索を行う方法を知らないprivate static ArrayList<Player>Playerlist=new ArrayList<Player>();
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String s;
{
System.out.printf("number of players(2 -4)? ");
int p = scanner.nextInt();
scanner.nextLine();
for(int i=0;p>4 || p<2;i++)
{
System.out.printf("only 2-4 players.\n");
System.out.printf("number of players(2 -4)?");
p = scanner.nextInt();
scanner.nextLine();
}
Player pl=new Player();
int m=1;
for(int k=1;k<=p;k++)
{
System.out.printf("give the name of the player %d: ",k);
s= scanner.nextLine();
pl.setName(s,m);
System.out.printf(pl.getName());
Playerlist.add(pl);
m++;
}
public class Player {
private String name;
private int id;
public Player() {
}
Player(String val,int k) {
this.name = val;
this.id=k;}
/**
* getName
*
*/
public String getName() {
return name;
}
/**
* setName
*/
public void setName (String val,int k) {
this.name = val;
this.id=k;
}
public void displayStudentDetails(){
System.out.println("ID is "+id);
System.out.println("Name is "+name)};
...私は多くのことを試してみましたが、彼らは仕事をdidntの....
私は "idで検索する"を理解していません。 PlayerのオブジェクトをArrayListに追加すると、配列リストを調べるだけで、各プレーヤーのIDと名前を取得できます。 あなたは何を望んでいるかの例を挙げることができますか? –
idsをどのように割り当てているかに基づいて、最初のプレイヤーは1から始まり、1だけ増加するように見えます(プレイヤー2はid 2を持つため)。これが常にそうである場合、 "id"のためにプレーヤーを得るためにはPlayerlist.get(id - 1);を実行します。 –