Cadastrar e mostrar em ordem alfabética

Olá a todos, meu primeiro tópico aqui no fórum e gostaria de pedir uma força a vocês. Fiz um algoritmo com intuito de armazenar nomes em um vetor, e mostrá-los em ordem alfabética. O problema é que do modo como eu fiz, que é bem dizendo um esqueleto pro projeto, só consigo desenvolve-lo ate um certo numero de cadastros, e no caso os faço um numeros de algoritmos pra ir comparando com forme o número máximo do vetor. Mas o objetivo é que ele cadastre quantos cadastros a pessoa quiser a partir dai mostrar organizado. O professor não nos deichou usar o método sort nem boblesort(acho que é assim rs), justamento por não termos aprendido e esse método facilita mais. Segueo codigo

[code]package controledecds ;
import java.util.Scanner;

public class NewClass{

public static void main(String[] args) {  
    Scanner scan=new Scanner(System.in);
   
    String vet[]= new String[3];
    for (int i = 0; i <vet.length; i++) {
      System.out.println("Digite um nome");
      
     vet[i]=scan.nextLine();
    
    } 
    System.out.println("-------");
    for (int j = 0; j <vet.length; j++) {
        if(vet[j+1].compareTo(vet[j])>0){
            String aux;
            aux=vet[j];
            vet[j]=vet[j+1];
            vet[j+1]=aux;
            
        }
        
        if(vet[j+2].compareTo(vet[j+1])>0){
            String aux;
            aux=vet[j+1];
            vet[j+1]=vet[j+2];
            vet[j+2]=aux;
        }
        if(vet[j+1].compareTo(vet[j])>0){
            String aux;
            aux=vet[j+1];
            vet[j+1]=vet[j];
            vet[j]=aux;
        }
        
        if(vet[j].compareTo(vet[j+2])>0){
            String aux;
            aux=vet[j+2];
            vet[j+2]=vet[j];
            vet[j]=aux;
        }
        
        for (int k = 0; k< vet.length; k++) {
            System.out.println(vet[k]);
            
        }
}  
    
    }

}[/code]
[]s

Use “TreeSet”: http://docs.oracle.com/javase/6/docs/api/java/util/TreeSet.html

Cara, vetores são estruturas inflexíveis. Ao criá-los, você é obrigado informar o tamanho (existem algumas maneiras de instanciar arrays sem informar o tamanho, porém isso ainda não te ajudaria).

Se o requisito do trabalho é utilizar apenas array de String, fica um pouco complicado atingir o seu objetivo sem a famosa POG. Minha dica é: Utilize um tamanho que você saiba que nunca vai estourar, por exemplo, new String[50]. Ou então solicite ao usuário a quantidade de pessoas que ele quer cadastrar(acho isso muito porco, mas já vi na faculdade), aí basta criar o array com a informação recebida.

O algoritmo de ordenação que você criou ficaria inviável para os casos que citei… de uma olhada na dica do ViniGodoy:
http://www.guj.com.br/java/274971-duvidas-como-ordenar-uma-lista-de-nomes-em-ordem-alfabetica#1445541

Posteriormente, pesquise a API Collections do Java… o seu problema seria facilmente resolvido com uma das implementações de List.

Falou!