Fala pessoal, preciso pegar alguns atributos de uma classe e agrupá-los em uma arraylist, no início foi fácil, agora me compliquei!
O compilador está acusando que minha ArrayList (CountryList) está vazia dentro da função countryCounter, nas linhas onde o código "for (int i = 0; i <= CountryList.size(); i++) {" aparece, ele acusa de estar dando erro ou no comando size() (diz que está em 0) e se eu inicio com algum objeto, o erro "java.lang.OutOfMemoryError: Java heap space" aparece.
O que pode ser?
Eis o código:
public class Main {
//Matriz com 3 colunas para armazenar as informações necessárias (Nome, ID, Country Name)
static ArrayList<Notice> NewsList = new ArrayList<Notice>();
static ArrayList<Country> CountryList = new ArrayList<Country>();
public static void main(String[] args) throws JDOMException, IOException {
for (int i = 0; i < files.length; i++) {
//aqui o código foi omitido, basicamente eu pego strings de vários arquivos textos e mando para o countryCounter.
countryCounter(countryName);
}
for (int i = 0; i < CountryList.size(); i++) {
System.out.println(CountryList.get(i).getName());
System.out.println(CountryList.get(i).getFrequency());
}
}
public static void countryCounter(String countryName) {
if (CountryList.isEmpty()) {
Country country = new Country();
country.setFrequency(1);
country.setName(countryName);
CountryList.add(country);
} else {
for (int i = 0; i <= CountryList.size(); i++) {
if (CountryList.get(i).equals(countryName)) {
CountryList.get(i).incrementFrequency();
} else {
Country country = new Country();
country.setFrequency(1);
country.setName(countryName);
CountryList.add(country);
}
}
}
}
}