Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Erro ao ordernar

Minha classe ta implementada assim:

package br.com.alura.algoritmos;

public class Programa {
    public static void main(String[] args) {
        Produto produtos[] = { 
                new Produto("Lamborghini", 1000000), 
                new Produto("Jipe", 46000),
                new Produto("Brasília", 16000), 
                new Produto("Smart", 46000), 
                new Produto("Fusca", 17000) 
        };
        Produto[] produto = ordena(produtos, produtos.length);

        for (Produto item : produto) {
            System.out.println(item.getNome() + " custa " + item.getPreco());
        }

    }

    public static int BuscaMenor(Produto[] produtos, int inicio, int termino) {
        int maisBarato = 0;
        for (int atual = inicio; atual < termino; atual++) {
            if (produtos[atual].getPreco() < produtos[maisBarato].getPreco()) {
                maisBarato = atual;
            }
        }
        return maisBarato;
    }

    private static Produto[] ordena(Produto[] produtos, int quantidadeDeElementos) {
        for (int atual = 0; atual < produtos.length; atual++) {
            int menor = BuscaMenor(produtos, atual, produtos.length - 1);
            Produto produtoAtual = produtos[atual];
            Produto produtoMenor = produtos[menor];
            produtos[atual] = produtoMenor;
            produtos[menor] = produtoAtual;
        }
        return produtos;
    }
}

Porem esta trazendo os dados assim

Fusca custa 17000.0
Brasília custa 16000.0
Jipe custa 46000.0
Smart custa 46000.0
Lamborghini custa 1000000.0
1 resposta
solução!

[EDIT] Eu tinha entendio errado, vou tentar ajudar ainda assim. Poderia enviar a classe produto também, por favor?

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software