• Matéria: Informática
  • Autor: nandalp92
  • Perguntado 9 anos atrás

Exercício de Java: restaurante. Estou tentando retornar os valores no arraylist, mas eles estão retornando como valores nulls. As duas classes são:

package trabalho01;

public class restaurante {

public restaurante(Integer Codigo, String nome_comida) {

}
private Integer Codigo;
private String nome_comida;


public Integer getCodigo(){
return Codigo;
}
public void setCodigo(Integer Codigo){
this.Codigo = Codigo;
}


public String getnome_comida(){
return nome_comida;
}
public void setnome_comida(String nome_comida){
this.nome_comida = nome_comida;
}




public String toString(){
return "Codigo: " + this.getCodigo() + "\t Pedido: " + this.getnome_comida() + "\n";
}



}

Estou tentando retornar os valores nessa classe:

package trabalho01;

import java.util.ArrayList;

public class TrabalhoT1 {

public static void main(String[] args) {
ArrayList Pedido = new ArrayList();

Pedido.add(new restaurante(5,"arroz"));
Pedido.add(new restaurante(4,"feijao"));
Pedido.add(new restaurante(3,"batata"));
Pedido.add(new restaurante(2,"cebola"));
Pedido.add(new restaurante(1,"salada"));


TrabalhoT1 t = new TrabalhoT1();

t.relatorio(Pedido);


}

public void relatorio(ArrayListpedidos){

System.out.println("--------------------------------------------------");
for(restaurante r: pedidos){
System.out.println(r.toString());
}
System.out.println("--------------------------------------------------");
}

public void relatorioRecursivo(){

}

}

Respostas

respondido por: breno709
2
Olá Nanda, você deve definir as variáveis privadas de sua classe no método de declaração da mesma, da seguinte maneira:

package trabalho01;

public class restaurante{
public restaurante (Integer Codigo, String nome_comida) {
//Aqui é onde você deve fazer a atribuição de suas variáveis privadas
_Codigo = Codigo;
_nome_comida = nome_comida;
}

// OBS: Mudei o nome dos campos privados para poder atribuir valores à eles no método acima
private Integer _Codigo;
private string _nome_comida;
}

//Espero ter ajudado!!! Breno Peçanha
[...]

nandalp92: Os valores ainda estão retornando nulos :( mas, obrigada pela ajuda.
binhopereira: Olha pelo que sei você devia declarar suas variáveis antes do contrutor.
binhopereira: private Integer Codigo;
private String nome_comida; public restaurante(Integer Codigo, String nome_comida) {

}
binhopereira: private String nome_comida; public restaurante(Integer Codigo, String nome_comida) {
this.Codigo = Codigo;
this.nome_comida = nome_comida; }
binhopereira: e dentro do construtor voce seta o valor da variavel. Ficou em varias mensagens que nao consegui usar enter kkkk
binhopereira: E ja que e a mesma classe pode usar apenas relatorio(Pedido);
Perguntas similares