1
I have a quiz game made in java and would like to add in a class the questions that would appear on the screen for the user, I thought to use Arrylist, but it is not working. I tried that:
package model;
import java.util.ArrayList;
/**
*
* @author Aluno
*/
public class Perguntas {
public static ArrayList<String> preciclagem = new ArrayList<String>();
public static ArrayList<String> psus = new ArrayList<String>();
public static ArrayList<String> precursos = new ArrayList<String>();
public static void Preciclagem(){
preciclagem.add("1°) Reciclar é uma forma de reduzir o lixo depositado no ambiente\n" +
"e todos podemos colaborar para a conscientização da sociedade sobre\n" +
"os benefícios dessa atividade.");
preciclagem.add("2°) Muitas pessoas utilizam essa forma de vida como fonte de renda, \n" +
"e ainda ajudam o meio ambiente. O profissional que destina o tempo \n" +
"para reciclagem é totalmente importante para o ciclo e redução da \n" +
"produção de lixos.");
preciclagem.add("3°) São muitos os materiais que são recicláveis e podemos fazer a \n" +
"separação na nossa casa e no local de trabalho. Os materiais que\n" +
"são recicláveis são: pilhas, acrílico, espuma, plástico, tecido e componentes\n" +
"eletrônicos.");
preciclagem.add("4°) Os materiais que serão reciclados são transportados para uma \n" +
"cooperativa ou são recolhidos em locais estratégicos, esses materiais \n" +
"são limpos e reprocessados em novos materiais para a produção industrial.");
preciclagem.add("5°) Mesmo com o avanço da tecnológia, é impossivel fazer com que os itens \n" +
"não reciclaveis se tornem futuramente reciclaveis.");
}
When I try to call the first question of that mistake:
public class Principal {
public static void main(String args[]){
System.out.println(preciclagem.get(0));
}
}
Error that has nothing stored:
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.rangeCheck(ArrayList.java:653)
at java.util.ArrayList.get(ArrayList.java:429)
at controller.Principal.main(Principal.java:21)
C:\Users\enzo\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1
FALHA NA CONSTRUÇÃO (tempo total: 0 segundos)
so I recommend you use the constructor method to initialize these questions (if you do not know what the constructor method I recommend searching) [links]( https://www.devmedia.com.br/constructes-em-java/28618 , https://www.guj.com.br/t/o-que-e-construtor/70766 , https://www.guj.com.br/t/qual-a-syntax-para-criar-um-metodo-construtor/66748 , http://www.mballem.com/post/declaraca-de-constructes-java/)
– Filipe Farias
From what I understood the constructor method serves to add the information the variables, but in my case I do not want to add more questions in this class, as the constructor method would be useful?
– Enzo A.
It would be because it is only called when creating the object, in your code you can call as many times as you want the Preciclagem method().
– Filipe Farias