Como comparar lista de strings ordem alfabetica

Como eu faço para comparar 2 String e saber qual vem primeiro (ordem alfabetica).Espero que alguem possa me ajudar, pois nao tenho a menor ideia de como fazer.

Você pode utilizar os métodos compareTo(String) e compareToIgnoreCase(String), esses métodos retornar <= -1 se a string vier antes, 0 se for igual e >= +1 se vier depois. O problema destes métodos é que não são locale-sensitive, já que certos idiomas como o espanhol, tem uma letra compostas por dois caracteres, como por ex, o ‘ll’. Para resolver esse problema dê uma olhada na classe java.util.Collator

1 curtida

Utilize o método compareTo da classe String.

Exemplo:

String str1 = "A"; String str2 = "B"; int comp = str1.compareTo(str2); if(comp < 0) { System.out.println("str1 menor que str2"); } else if(comp > 0) { System.out.println("str1 maior que str2"); } else { System.out.println("str1 e str2 são iguais"); }

Nossa, reparem como as duas mensagens acima foram postadas ao mesmo tempo :idea:

Olá denis

Você pode usar o método compareTo da classe String. Esse método retorna um número inteiro. Por exemplo:

int comparacao = "Cristian".compareTo("denis");

Esse método retorna um numero inteiro. Se ele for menor do que zero, o primeiro argumento é “menor” (alfabeticamente, nesse caso) que o segundo; maior que zero se o primeiro for “maior” que o segundo, e igual a zero se eles forem iguais. Esse método diferencia maiúsculas de minúsuclas. Se não quiser isso, use o compareToIgnoreCase.

Até mais,

Obrigado pela ajuda, foi de grande importancia.

cheguei meio atrasado…
mas o compareTo nao compara so a primeira letra?!?!

como faria pra comparar mais de uma string!?

t+

[quote=imax]cheguei meio atrasado… mas o compareTo nao compara so a primeira letra?!?![/quote]

Ah é? De onde tirou essa conclusão? Do Javadoc que não foi.

imax:

como faria pra comparar mais de uma string!?

Aprende a ler o Javadoc, vai ser de grande utilidade para você.

[quote=juzepeleteiro][quote=imax]cheguei meio atrasado… mas o compareTo nao compara so a primeira letra?!?![/quote]

Ah é? De onde tirou essa conclusão? Do Javadoc que não foi.

imax:

como faria pra comparar mais de uma string!?

Aprende a ler o Javadoc, vai ser de grande utilidade para você.
[/quote]

  1. a conclusao eu tirei de outros foruns…
  2. se preocupa nao… eu to lendo… mas nao tenho o tempo necessario pra ler tanto assim…
  3. obrigado pela maneira ironica e amigavel de responder uma duvida…

imax:

1) a conclusao eu tirei de outros foruns…

Pois é… Cuidado com o que você lê em forum, nem sempre é 100%.

imax:

2) se preocupa nao… eu to lendo… mas nao tenho o tempo necessario pra ler tanto assim…

Eu nunca li o javadoc inteiro, pelo menos não do inicio ao fim sabe, mas tipo… você tá com dúvida na classe String? Lê o javadoc da classe String, seria mais rapido do que usar o forum.

imax:

3) obrigado pela maneira ironica e amigavel de responder uma duvida…

Foi ironica sim, e amigável também. Sabe, é melhor ensinar pescar do que dar o peixe.

19-02-2020

Se você é de verdade comparando Strings em ordem alfabética para organizá-los em ordem, use o método compareTo () da interface Comparable em Java. Isso também comparar String com base nesse valor e pode ser usado para classificar String em ordem alfabética , se eles estiverem armazenados em Lista usando Coleções. método sort ().



Além disso, como você compara duas strings lexicograficamente?

O método compareTo () é usado para comparando duas strings lexicograficamente em Java
Compare duas strings lexicograficamente em Java

  1. if (string1> string2) retorna um valor positivo.
  2. se ambas as strings forem iguais lexicograficamente. ou seja, (string1 == string2) retorna 0.
  3. if (string1

Além disso, como você organiza uma string em ordem alfabética em Java? Programa Java para classificar nomes em ordem alfabética

  1. classe pública Alphabetical_Order.
  2. int n;
  3. String temp;
  4. Scanner s = novo Scanner (Sistema. In);
  5. Sistema. Fora. imprimir ("Digite o número de nomes que deseja inserir:");
  6. n = s. nextInt ();
  7. Nomes das strings [] = nova String [n];
  8. Scanner s1 = novo Scanner (Sistema. In);

Da mesma forma, você pode perguntar: como você classifica duas cordas?

Para classificar strings em ordem alfabética na programação Java, você deve pedir ao usuário para inserir o duas cordas , agora comece a comparar o duas cordas , se encontrado, faça uma variável, digamos, temp do mesmo tipo, agora coloque o primeiro corda para a temperatura, em seguida, coloque o segundo corda para o primeiro, e coloque o temp para o segundo

Qual é o método de string usado para comparar duas strings uma com a outra?

CompareTo () é usado para comparando duas cordas lexicograficamente. Cada caráter de ambos cordas são convertidos em um valor Unicode. No entanto, se ambos cordas são iguais, então isso método retorna 0, senão só resulta em um valor negativo ou positivo.

29 respostas de perguntas relacionadas encontradas

Usando String. equals (): Em Java, o método equals () de string compara as duas strings fornecidas com base nos dados / conteúdo da string. Se todo o conteúdo de ambas as strings for o mesmo, ele retornará verdadeiro. Se todos os caracteres não corresponderem, ele retornará falso.

Ao implementar a interface Comparable, você precisa implementar o método compareTo (). Você precisa dele para comparar objetos, a fim de usar, por exemplo, o método de classificação da classe ArrayList. Você precisa de uma maneira de comparar seus objetos para poder classificá-los.

O método Java String compareTo () é usado para comparar duas strings lexicograficamente. Cada caractere de ambas as strings é convertido em um valor Unicode para comparação. O resultado é positivo se a primeira string for lexicograficamente maior que a segunda string, caso contrário, o resultado seria negativo.


Com Comparable, sua classe precisa implementar a interface comparável e você precisa substituir seu método compareTo. Então, quando você chama as coleções. método de classificação em um objeto de sua classe, sua implementação do método compareTo é chamada INTERNALLY e os objetos são classificados de acordo.

Ordem Lexicográfica. Esta é a ordem do dicionário, exceto que todas as letras maiúsculas precedem todas as letras minúsculas. Essa ordem é o que o método compareTo () da classe String usa. Duas strings são lexicograficamente iguais se tiverem o mesmo comprimento e contiverem os mesmos caracteres nas mesmas posições.

Em matemática, a ordem lexicográfica ou lexicográfica (também conhecida como ordem lexical, ordem de dicionário, ordem alfabética ou produto lexicográfico (al)) é uma generalização da maneira como as palavras são ordenadas alfabeticamente com base na ordem alfabética de suas letras componentes.


Para comparar duas strings na Programação C ++, você deve pedir ao usuário para inserir as duas strings e começar a comparar usando a função strcmp (). Se ele retornar 0, então ambas as strings serão iguais e se não retornar 0, então ambas as strings não serão iguais, conforme mostrado aqui no programa a seguir.

Método 1 (classificação natural): Aplique o método toCharArray () na string de entrada para criar uma matriz de caracteres para a string de entrada. Use matrizes. método sort (char c []) para classificar a matriz de caracteres. Use o construtor da classe String para criar uma string classificada da matriz char.

Matrizes. O método equals (char [] a, char [] a2) retorna true se os dois arrays especificados de chars forem iguais um ao outro. Duas matrizes são iguais se contiverem os mesmos elementos na mesma ordem. Duas referências de matriz são consideradas iguais se ambas forem nulas.


O tipo de bolha tem esse nome porque os elementos tendem a se mover para cima na ordem correta, como bolhas subindo à superfície.

Para classificar o ArrayList, você precisa simplesmente chamar as coleções. método sort () passando o objeto ArrayList preenchido com nomes de países. Este método classificará os elementos (nomes de países) da ArrayList usando a ordem natural (alfabeticamente em ordem crescente). Vamos escrever um código para isso.

Um tipo de bolha é um tipo de troca interna. Em vez de pesquisar uma matriz como um todo, a classificação por bolha funciona comparando pares adjacentes de objetos na matriz. Se os objetos não estiverem na ordem correta, eles serão trocados de forma que o maior dos dois suba.


No Bubble Sort, as duas strings sucessivas arr [i] e arr [i + 1] são trocadas sempre que arr [i]> arr [i + 1]. Os valores maiores afundam e, portanto, são chamados de classificação de afundamento. No final de cada passagem, valores menores “borbulham” gradualmente em seu caminho para cima e, portanto, são chamados de tipo de bolha.

Bubble Sort em C é um algoritmo de classificação em que iteramos repetidamente através do array e trocamos elementos adjacentes que não estão ordenados. Repetimos isso até que o array seja classificado.

Última postagem

Tag