public Atividade6() {
}
public ArrayList ordena (ArrayList lista) {
for (int i = 0; i < lista.size() - 1; i++) {
for (int j = i + 1; j < lista.size(); j++) {
if (lista.get(i).nome.compareTo(lista.get(j).nome) > 0) { //Não sei o método que compara ArrayList como se fosse o compareTo() da String
/*lista.get(lista.size() + 1) = lista.get(i);
lista.get(j) = lista.get(i);
lista.get(i) = lista.get(lista.size() + 1);*/
}
}
}
}
public static void main (String[] args) {
ArrayList al = new ArrayList();
al.add(new Funcionario(1001, "Joao da Silva", "123.456.789-01", 'M', 2000.00));
al.add(new Funcionario(1002, "Maria da Silva", "123.456.789-02", 'F', 1500.00));
al.add(new Funcionario(1003, "Jose da Silva", "123.456.789-03", 'M', 10000.00));
for (int i = 0; i < al.size(); i++) {
System.out.println (al.get(i));
}
}
Conselho: esqueça que o Bubblesort existe. Ele é um dos modos mais lentos de ordenar uma lista. Só se sua lista tiver uns 5 ou 6 elementos, no máximo; mais que isso e você vai passar a ter problemas sérios.
Esqueça que é possível ordenar uma lista “na mão”.
Na sua vida profissional, você tem de saber duas coisas:
Como usar coisas prontas, que são testadas e super-otimizadas;
Como não reimplementar coisas só porque você não entendeu como se usam as coisas prontas.
Acho que se o claudneto está aprendendo a fazer BubbleSort é porque na facul ele está cursando alguma disciplina de ordenação de dados.
Normalmente quando aprendemos a programar fazemos aquele for tosco comparando todos os valores de um vetor, para ver se está na ordem ou não. Depois aprendemos a usar o bubble sort, que já melhor que nada.
Provavelmente ele vai ver também como usar MergeSort, QuickSort, etc… para entender como funciona uma ordenação e também poder comparar qual método é melhor.
Espero que sim. (No meu tempo, há mais de 20 anos atrás, os algoritmos eram os mesmos - quicksort, bubblesort, heapsort etc. - e os métodos de ensino eram os mesmos, mas usando Pascal, não Java, que não existia naquele tempo).