Ordenação Bubble Sort

Olá, eu criei esse ArrayList Contato com nome, email e telefone. Eu queria saber como eu posso ordenar em ordem alfabética usando Bubble Sort.

Desde já, Agradeço.

import java.util.ArrayList;
import java.util.Scanner;

public class Principal {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		ArrayList<Contato> contatos = new ArrayList();
		int op = 0;
		String nome;
		String email;
		String telefone;
		while(op != 3) {
			System.out.println("Deseja cadastrar um usuario?  sim: 1 não:3");
			op = sc.nextInt();
			if(op == 1) {
				System.out.println("Digite o nome do usuario:");
				nome = sc.next();
				System.out.println("Digite o email do usuario:");
				email = sc.next();
				System.out.println("Digite o telefone do usuario:");
				telefone = sc.next();
				Contato contato = new Contato(nome, email, telefone);
				contatos.add(contato);
			}
		}
		
		
		
		for(Contato c : contatos) {
			System.out.println(c.getNome());
			System.out.println(c.getEmail());
			System.out.println(c.getCelular());
			System.out.println("-------------------------------");
		}


	}

}

Oi Lucas! Tudo bem?

A resposta é sim, contudo não recomendo utilizar esse tipo de implementação bubble sort em programas porque não é performático. Utilize as APIs de ordenação do Java.

Segue uma implementação de bubble sort que escrevi usando sua classe.

Principal.java

Abraço,

Rodrigo

1 curtida

Deu certo, Obrigado!

Mas não entendi muito bem o que essa função compareTo() faz. Ela atribui um valor a String?