JAVA - 添加到arrayList一个字符串
Posted
技术标签:
【中文标题】JAVA - 添加到arrayList一个字符串【英文标题】:JAVA - Add to arrayList a String 【发布时间】:2013-10-27 15:18:23 【问题描述】:我正在尝试将来自用户输入的字符串发送到 ArrayList:
private static void adicionarReserva()
Scanner adiciona = new Scanner(System.in);
System.out.println("Numero da pista: ");
int nPista = adiciona.nextInt();
System.out.println("Numero de jogadores: ");
int nJogadores = adiciona.nextInt();
System.out.println("Data Inicio: ");
String data_inicio = adiciona.next();
Reservas reserva = new Reservas(nPista, data_inicio);
ArrayList<Jogadores> nome_jogador = new ArrayList();
for (int i=1;i<=nJogadores;i++)
System.out.println("Nome Jogador: ");
String nome = adiciona.next();
nome_jogador.add(nome);
reserva.addJogadores(nome_jogador);
在我的班级:Reservas,我有这个:
public void addJogadores(Jogadores lista_jogadores)
this.lista_jogadores.add(lista_jogadores);
但我有这个错误:
nome_jogador.add(nome);
ArrayList 类型中的方法 add(Jogadores) 不适用于参数 (String)
还有这个:
reserva.addJogadores(nome_jogador);
Reservas 类型中的 addJogadores(Jogadores) 方法不适用于参数 (ArrayList)
谁能帮帮我?
【问题讨论】:
【参考方案1】:这是一个非常有意义的错误。
这是你的ArrayList
:
ArrayList<Jogadores> nome_jogador = new ArrayList();
↑
你想插入什么?一个String
,但它应该有Jogadores
。
现在看看你的addJogadores
方法签名:
public void addJogadores(Jogadores lista_jogadores)
↑
它接受Jogadoers
对象而不是ArrayList
。
【讨论】:
【参考方案2】:你必须传递一个类Jogadores
的实例,如果Jogadores
有一个接受String
的构造函数,那么:
nome_jogador.add(new Jogadores(nome));
【讨论】:
【参考方案3】:ArrayList<Jogadores> nome_jogador = new ArrayList();
您只能添加作为 Jogadores
实例的对象,并且因为您试图添加 String
(这显然不是 Jogadores
的实例)它会给您一个错误。
【讨论】:
【参考方案4】:private static void adicionarReserva()
Scanner adiciona = new Scanner(System.in);
System.out.println("Numero da pista: ");
int nPista = adiciona.nextInt();
System.out.println("Numero de jogadores: ");
int nJogadores = adiciona.nextInt();
System.out.println("Data Inicio: ");
String data_inicio = adiciona.next();
Reservas reserva = new Reservas(nPista, data_inicio);
ArrayList<Jogadores> nome_jogador = new ArrayList();
for (int i=1;i<=nJogadores;i++)
System.out.println("Nome Jogador: ");
String nome = adiciona.next();
nome_jogador.add(new Jogadores(nome));
reserva.addJogadores(nome_jogador);
在您的班级中称为:Reservas
public void addJogadores(ArrayList<Jogadores> lista_jogadores)
this.lista_jogadores.addAll(lista_jogadores);
【讨论】:
以上是关于JAVA - 添加到arrayList一个字符串的主要内容,如果未能解决你的问题,请参考以下文章