ArrayList de array numérico

6 respostas
java
S

Olá, pessoal,

Gostaria de saber como fazer um ArrayList em android recebendo um vetor numérico. Vi vários exemplos com string, mas nenhum do jeito que eu preciso.
Seria isso:

private int[] dados = new int[12];
private ArrayList listaJog = new ArrayList();

listaJog vai receber o array dados a cada ciclo e depois eu precisarei comparar cada item do array dados com os que tiver na lista.

6 Respostas

D

O famoso “essa eu sabia com laranjas”.

List<int[]> listaDeVetorDeInteiros = new ArrayList<int[]>();
int[] vetor = new int[]{1, 2, 3, 4, 5};
listaDeVetorDeInteiros.add(vetor);
S
OK, funcionou. Mas agora vem a segunda parte:

Eu preciso, a cada vez que inserir o vetor, que se faça um sort na lista.

No ArrayList tem o Collections.sort();

Aqui ele mostra uma mensagem de erro dizendo:

Inferred type int[] for type parameter T is not within its bound; should implement 'java.lang.Comparable<? super int[]>

Aparentemente o tipo INT não serve para o sort.

Alguma solução para o sort?

D

O que acontece é que você precisa, primeiro, fazer o sort e depois inserir. Como você está vendo, a exceção indica que o tipo int[] não implementa comparable, logo, permite a execução desta ordenação.

L

Use o array com o wrapper Integer em vez de int para ver se funciona.

S

Mesma mensagem de erro, apenas trocando int por Integer.

S

Desculpe a NOOBice, mas vc teria um exemplo que implementasse a solução? Eu não entendi/consegui fazer o sort antes de inserir (ele fica fazendo o sort automaticamente depois pra cada inserção?)… Onde que teria que colocar, e se tiver que usar o comparable, como fazer? eu até agora só achei exemplos do uso com lista de objetos…

Criado 28 de maio de 2018
Ultima resposta 3 de jun. de 2018
Respostas 6
Participantes 3