[英]JAVA - Add to arrayList a String
I'm trying to send to a ArrayList Strings that come from the user input: 我正在尝试将来自用户输入的字符串发送到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);
}
In my Class called: Reservas, i have this: 在我的班级:Reservas中,我有这个:
public void addJogadores(Jogadores lista_jogadores) {
this.lista_jogadores.add(lista_jogadores);
}
But i have this error: 但是我有这个错误:
nome_jogador.add(nome);
The method add(Jogadores) in the type ArrayList is not applicable for the arguments (String)
ArrayList类型的方法add(Jogadores)不适用于参数(字符串)
And this one: 还有这个:
reserva.addJogadores(nome_jogador);
The method addJogadores(Jogadores) in the type Reservas is not applicable for the arguments (ArrayList)
Reservas类型的方法addJogadores(Jogadores)不适用于参数(ArrayList)
Any one can help me out? 有人可以帮我吗?
It's very meaningful error you're getting. 这是一个非常有意义的错误。
This is your ArrayList
: 这是您的
ArrayList
:
ArrayList<Jogadores> nome_jogador = new ArrayList();
↑
What are you trying to insert to it? 您想插入什么? a
String
, but it suppose to have Jogadores
in it. 一个
String
,但是它假定里面有Jogadores
。
Now look at your addJogadores
method signature: 现在查看您的
addJogadores
方法签名:
public void addJogadores(Jogadores lista_jogadores)
↑
It accepts Jogadoers
object and not an ArrayList
. 它接受
Jogadoers
对象,而不是ArrayList
。
您必须传递类Jogadores
的实例,如果Jogadores
具有接受String
的构造函数,则:
nome_jogador.add(new Jogadores(nome));
ArrayList<Jogadores> nome_jogador = new ArrayList();
仅允许您添加作为Jogadores
实例的对象,并且由于您尝试添加String
(显然不是Jogadores
的实例),因此会产生错误。
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);
}
In your Class called: Reservas 在您的班级中:Reservas
public void addJogadores(ArrayList<Jogadores> lista_jogadores) {
this.lista_jogadores.addAll(lista_jogadores);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.