2013-10-27 20 views
0

我試圖發送到來自用戶輸入的字符串的ArrayList:JAVA - 添加到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); 

The method add(Jogadores) in the type ArrayList is not applicable for the arguments (String)

而這一次:

reserva.addJogadores(nome_jogador); 

The method addJogadores(Jogadores) in the type Reservas is not applicable for the arguments (ArrayList)

任何一個可以幫助我嗎?

回答

3

這是你得到非常有意義的錯誤。

這是您的ArrayList

ArrayList<Jogadores> nome_jogador = new ArrayList(); 
      ↑ 

什麼是你想插入呢?一個String,但它假設其中有Jogadores

現在看看你的addJogadores方法簽名:

public void addJogadores(Jogadores lista_jogadores) 
         ↑ 

它接受Jogadoers對象,而不是一個ArrayList

0

你要通過Jogadores類的實例,如果Jogadores具有接受String然後構造:

nome_jogador.add(new Jogadores(nome)); 
0
ArrayList<Jogadores> nome_jogador = new ArrayList(); 

你只被允許添加是Jogadores一個實例對象,並因爲你試圖添加String(這顯然不是Jogadores一個實例),它給你一個錯誤。

0
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); 
}