O problema esta na forma de comparação pois:
== , compara a referenção de um objeto na memória
equals compara o valor dele
Ex
Integer x = 0;
Integer y =0;
// x == y - isso retorna false, pois os OBJETOS são diferentes
//x.equals(y) - isso retorna true, pois os VALORES são iguais
Felipe Costa
Analista de Sistemas Android Junior
On Oct 28, 12:50 am, Cleidimar Viana <cleidimarvi...@gmail.com> wrote:
> Vlw aeh galera, consegui da seguinte forma:
>
> int nVezes = 0;
> int comparaV=0;
> if ( tamanhoLista > 2 ){
> for(int p = 0; p<tamanhoLista; p++){
> nVezes = 0;
> for(int k = p+1; k< tamanhoLista; k++){
> if(lista.get(p).equals(lista.get(k))){
> ++nVezes;
> }
> }
> if (nVezes > comparaV){
> moda = lista.get(p);
> comparaV = nVezes;
> }
>
> }
>
> }
>
> On Oct 27, 2:02 pm, "leonardo." <leonardometalh...@gmail.com> wrote:
>
>
>
>
>
>
>
> > entao acho que por ser feito isso
>
> > private getValoresRepetidos(Double valor, List lista) {
> > List valoresRepetidos = new ArrayList();
> > for (int i=0; i < lista.size(); i++) {
> > Double valorNaLista (Double) lista.get(i);
> > if (valorNaLista.equals(valor) {
> > valoresRepetidos .add(valorNaLista);
> > }
>
> > return valoresRepetidos ;
> > }
>
> > depois do
> > //Armazena um valor na lista
> > * lista.add(v);*
>
> > voce chama o metodo
> > *lista2.addAll(getValoresRepetidos(Double valor, List lista) );*
>
> > Em 27 de outubro de 2011 12:48, Cleidimar Viana
> > <cleidimarvi...@gmail.com>escreveu:
>
> > > Acabei de tentar, mas não funfou!
>
> > > Acho que neste caso será um algoritmo de ordem, porque tem que ser
> > > comparado elemento por elemento e armazenar numa outra lista.
> > > Essa comparação, não estou conseguindo fazer.
>
> > > On Oct 27, 1:42 pm, "leonardo." <leonardometalh...@gmail.com> wrote:
> > > > tentou assim?
> > > > meuBotao.setOnClickListener(new View.OnClickListener(){
> > > > public void onClick(View arg0){
>
> > > > Double v =
> > > > Double.parseDouble(entradaDeTexto.getText().toString());
>
> > > > //limpa o campo de inserção de dados
> > > > entradaDeTexto.setText(null);
>
> > > > //Armazena um valor na lista
> > > > lista.add(v);
>
> > > > if (tamanhoLista > 1){
> > > > * if (lista.contains(v)){
> > > > lista2.add(v);
> > > > }*
> > > > }
>
> > > > }//Fim do onClick()
>
> > > > }//Fim do OnClickListener()
> > > > );//Fim do setOnClickListener()
> > > > Em 27 de outubro de 2011 12:32, Cleidimar Viana
> > > > <cleidimarvi...@gmail.com>escreveu:
>
> > > > > Sim, tentei. Mas ai que tá, o Set armazena os valores que não repetem.
> > > > > E no meu caso, quero os valores repetentes armazenados numa outra
> > > > > lista.
>
> > > > > On Oct 27, 1:24 pm, "leonardo." <leonardometalh...@gmail.com> wrote:
> > > > > > tentou usar um set ao inves de list?
>
> > > > > > Em 27 de outubro de 2011 12:15, Cleidimar Viana
> > > > > > <cleidimarvi...@gmail.com>escreveu:
>
> > > > > > > Olá Pessoal,
>
> > > > > > > como sempre, estou precisando de um Help.
>
> > > > > > > Quero encontrar qual a moda de uma ArrayList, ou seja, qual
> > > elemento
> > > > > > > que repete mais dentro desta lista. Tentei fazer da seguinte
> > > maneira
> > > > > > > como mostra abaixo, comparando o ultimo com o penúltimo elemento
> > > > > > > inserido e adicionando numa outra lista. O que pode estar errado?!
>
> > > > > > > meuBotao.setOnClickListener(new View.OnClickListener(){
> > > > > > > public void onClick(View arg0){
>
> > > > > > > Double v =
> > > > > > > Double.parseDouble(entradaDeTexto.getText().toString());
>
> > > > > > > //limpa o campo de inserção de dados
> > > > > > > entradaDeTexto.setText(null);
>
> > > > > > > //Armazena um valor na lista
> > > > > > > lista.add(v);
>
> > > > > > > if (tamanhoLista > 1){
> > > > > > > if (lista.get(tamanhoLista)==
> > > > > > > lista.get(tamanhoLista-1)){
> > > > > > > lista2.add(v);
> > > > > > > }
> > > > > > > }
>
> > > > > > > }//Fim do onClick()
>
> > > > > > > }//Fim do OnClickListener()
> > > > > > > );//Fim do setOnClickListener()
0 comentários:
Postar um comentário