Imprimir objeto do ArrayList

1 resposta
programaçãojava
P

Estou com um problema que nem sei se tem solução!
A quem puder me ajudar agradeço pois sou iniciante e não conheço nem metade do que está por vir.
Meu problema é o seguinte:

Existem 02 sistemas de informação trabalhando em conjunto:

1)Sistema Fornecedor De Palavras - Fornece listas que serão usadas por outro sistema. Este sistema cria listas com palavras aleatórias
e envia para o Sistema Gerador Gerador de Domínios uma nova lista nos seguintes minutos de cada hora: 3, 7, 11, 13, 17.

2) Sistema Gerador de Domínios - Gera domínios usando palavras. Esse sistema vai apresentar essas palavras no console todas as vezes em que ele recebe uma lista de palavras.

Só que eu não consigo mudar a lista a cada minuto. Precisaria de algum comando para imprimir sempre a próxima lista. E o código que usei imprime uma específica sempre.

Meus códigos:

import java.util.ArrayList;

import java.util.Date;

import java.util.List;

public class SistemaFornecedorDePalavras {

public static void main(String[] args) throws InterruptedException {
    // vamos chamar um método para iniciar o Sistema
    iniciar();
}

public static void iniciar() throws InterruptedException {
    // criei esse método para iniciar o Sistema...
    // agora vamos, dentro desse método:
    // 1)Observar a hora;
    // 2)quando chegar a hora especifica enviar uma lista de palavras;

    int minutos = 0;
    while (minutos < 60) {
        Date d = new Date(); // data atual da máquina
        int minuto = d.getSeconds();

        if (minuto == 3 || minuto == 7 || minuto == 11 || minuto == 13 || minuto == 17) {
            enviar_lista_de_palavras();
        }

        Thread.sleep(1000); // 1 Segundo = 1000 Milissegundos || 1 Minuto = 60000 Milissegundos
    } // while termina aqui
}

public static void enviar_lista_de_palavras() throws InterruptedException {
    List listas;
    List lista_1;
    List lista_2;
    List lista_3;
    listas = gerar_lista_de_palavras();

    SistemaGeradorDeDominios.receba_a_lista(listas);

}

public static List gerar_lista_de_palavras() {

    List<String> lista_1 = new ArrayList<String>();
    lista_1.add("registro");
    lista_1.add("dominio");
    lista_1.add("site");
    lista_1.add("portal");

    List<String> lista_2 = new ArrayList<String>();
    lista_2.add("preto");
    lista_2.add("branco");
    lista_2.add("claro");
    lista_2.add("escuro");

    List<String> lista_3 = new ArrayList<String>();
    lista_3.add("um");
    lista_3.add("dois");
    lista_3.add("tres");
    lista_3.add("quatro");

    List listas = new ArrayList<List>(); // objeto listas
    listas.add(lista_1);
    listas.add(lista_2);
    listas.add(lista_3);

    return listas;
}

}

import java.util.ArrayList;

import java.util.Iterator;

import java.util.List;

import com.sun.xml.internal.ws.api.pipe.NextAction;

public class SistemaGeradorDeDominios {

public static void main(String[] args) throws InterruptedException {
    List lista = new ArrayList();
    receba_a_lista(lista);
}

public static void receba_a_lista(List listas) throws InterruptedException {
    System.out.println("\nINICIADO o método receba_a_lista!\n"); //  \nserve pra pular uma linha

    // percorrer listas e imrpimi-las:
    System.out.println("Recebi as palavras abaixo:");

    for(int i=0;    i<( (List) listas ).size();        i++){
    }
    System.out.println( ( (List) listas ).get(0) );
    

    System.out.println("\nFINALIZADO o método receba_a_lista!\n");
}

public static void gerar_dominios(Object obj) {
    System.out.println("Aguarde! Estou gerando domínios para a palavra "+ obj);

}

}

Observação: coloquei segundos pra verificar o código sem ter que esperar os minutos chegarem
Resultado:

1 Resposta

M

Dá um olhada/lida na documentação do Java referente ao ArrayList, lá temos alguns métodos co-relacionado aos FOR’s utilizando método como ‘hasNext()’ onde ele valida se existe um próximo valor na lista etc…

Criado 23 de abril de 2018
Ultima resposta 25 de abr. de 2018
Respostas 1
Participantes 2