Como ordenar palavras

oi pessoal gostaria de saber qual código em Arrey eu uso para por palavras ou letras em ordem alfabética, claro o programa vai pedir que o usuário digite as…

Ninguém aqui lhe dará o código propriamente pronto. Se você tivesse um esboço de um código seria mais fácil alguem ajudar, por isso lhe darei uma “lógica”.

Um tipo primitivo ‘char’, em Java, nada mais é do que um número do tipo ‘int’ da tabela Unicode que representa um caractere. Ou seja, podemos comparar mesmo declarando tipos ‘char’ como inteiros. Então podemos usar aqueles velhos e conhecidos operadores de comparação (< > >= <= != ==).

Para resolver seu exercicio, que tal comparar em um Array, posição por posição(for), uma letra(a) com outra(b)?

Fik Dik!
Espero ter explicado bem…

Abraço.

Palavras ou Letras ?

Seguinte,

Sendo bem direto use o método sort da classe Arrays.

Olá amigo, fshima.

Veja o exemplo que te mando para ordenar em ordem alfabética as palavras digitadas em um console por exemplo;


import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.Scanner;

/** Exemplo de como ordenar palavras digitadas em console
 * @author paulo.leite
 * @since 1.6
 * @version 1.0
 */
public class TesteOrdered {

	/** Método Main da Classe de Exemplo
	 * @param args
	 * 
	 * @author paulo.leite
	 */
	public static void main(String[] args) {
		Scanner entrada = new Scanner(System.in);
		System.out.println("Digite as palavras: (*use virgula para mais de uma palavra)\n");
		String palavra = entrada.next();

		for (String s : getPalavrasOrdenadas(palavra)) {
			System.out.println(s);
		}
	}

	/** Método getPalavrasOrdenadas() da Classe de Exemplo
         * Ordena as palavras e retorna a lista
	 * @param String palavras
	 * @since 1.6
	 * @author paulo.leite
	 * @version 1.0
         */
	private static List<String> getPalavrasOrdenadas(String palavras) {

		if (palavras != null) {
                        
			String arrayPalavras[] = palavras.split(",");

                        //pego o array de palavras e converto em lista de palavras
			List<String> listaPalavras = new ArrayList<String>(Arrays.asList(arrayPalavras));
			
			Collections.sort(listaPalavras, new Comparator<String>() {
				@Override
				public int compare(String palavra1, String palavra2) {
					return palavra1.toString().compareTo(palavra2.toString());
				}
			});
			return listaPalavras;
		}
		return null;
	}
}

Espero ter ajudado
Fallow Abraço

Seguinte,

Legal… mas não era eu que estava com a dúvida, estava propondo uma solução.

mais especificamente:

[code]import java.util.Arrays;

/*

  • @author Fernando Shima
  • @version 1.00 25/03/2011
    */

public class OrdenarPalavras {
public static void main(String[] args) throws IOException {

	String a[] = new String[3];
	a[0] = "saldk";
	a[1] = "adjd";
	a[2] = "dddd";
	Arrays.sort(a);
	
	for (int cont = 0; cont< a.length; cont++){
		System.out.println(a[cont]);
	}

}
}[/code]

Ei, o sort() vai organizar as palavras em ordem alfabética ou as letras de cada palavra em casa posição cont?

Cada classe tem sua forma natural de ordenação… no caso da string é Alfabetica.

O que você pode fazer é criar sua propria ordenação… Usando Comparator / Comparable.

Att