* 1. * import java.util.ArrayList;
* 2. * public class BlocoDeNotas{
* 3. * ArrayList<String> notas;
* 4. *
* 5. * public void BlocoDeNotas(){
* 6. * notas = new ArrayList<>();
* 7. * }
* 8. * public void addNota(String nota){
* 9. * notas.add ( nota );
* 10. * }
* 11. * public int procurarNota(String nota){
* 12. * for(int i = 0; i < notas.size(); i++){
* 13. * if(notas.get(i).equals(nota)){
* 14. * return i;
* 15. * }
* 16. * }
* 17. * return -1;
* 18. * }
* 19. * public boolean removerNota(String nota){
* 20. * int p = procurarNota(nota);
* 21. * if (p == -1){
* 22. * return false;
* 23. * }
* 24. * notas.remove(p);
* 25. * return true;
* 26. * }
* 27. * public String toString(){
* 28. * return "[Notas: " + notas + "]";
* 29. * }
* 30. * }
import javax.swing.JOptionPane;
public class AppBloco{
public static void main (String[] args){
BlocoDeNotas blocoDeNotas = new BlocoDeNotas();
int opcao;
String menu = "1- Insira uma nota\n2- Remova uma nota\n3- Altere uma nota\n4- Listar todas as notas\n5- Sair";
do{
opcao = Integer.parseInt (
JOptionPane.showInputDialog (menu));
switch (opcao){
case 1:
blocoDeNotas.addNota(JOptionPane.showInputDialog("Nota: "));
break;
case 2:
blocoDeNotas.removerNota(JOptionPane.showInputDialog("Qual numero da nota para remover: "));
break;
case 3 :
blocoDeNotas.removerNota(JOptionPane.showInputDialog("Qual nota quer trocar?: "));
blocoDeNotas.addNota(JOptionPane.showInputDialog("Nova nota: "));
break;
case 4:
blocoDeNotas.toString();
break;
case 5:
}
}while(opcao != 5);
}
}
"Exception in thread "main" java.lang.NullPointerException "quando eu tento passar o valor para o arraylist (RESOLVIDO))
S
2 Respostas
Aqui da erro?
Eu acho que você queria inicializar o arrayList pelo construtor
Para isso, basta remover o void do código abaixo
public void BlocoDeNotas(){
notas = new ArrayList<>();
}
Ficando assim:
public BlocoDeNotas(){
notas = new ArrayList<>();
}
Um construtor não tem tipo de retorno e também não pode ser void
S
Obg pela ajuda era isso msm, estou começando agr a programar, vlw de vdd !!
Criado 7 de dezembro de 2018
Ultima resposta 7 de dez. de 2018
Respostas 2
Participantes 2
Alura POO: o que é programação orientada a objetos? Aprenda os conceitos básicos da programação orientada a objetos, como classes, objetos, herança, encapsulamento e polimorfismo, com exemplos.
Casa do Codigo Desbravando SOLID: Praticas avancadas para codigos de... Por Alexandre Aquiles — Casa do Codigo