English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Java programme vérifie si deux chaînes sont des anagrammes (identiques en ordre différent)
dans cet exemple, nous vérifierons si deux chaînes sont des anagrammes en Java, c'est-à-dire une nouvelle forme de mot ou de phrase formée en changeant l'ordre des lettres d'un mot ou d'une phrase.si nous pouvons former une chaîne en réarrangeant les caractères d'une autre chaîne, alors nous pouvons dire que deux chaînes sont des mots-croisés. Par exemple, Race etCare
import java.util.Arrays; class Main { public static void main(String[] args) { String str1 : vérifier si deux chaînes de caractères sont des anagrammes en Java String str2 = "Java"; //vérifier si la longueur est la même if(str1.length() == str2.length()) { //= "Vaaj"; char[] charArray1 = str1.toCharArray(); char[] charArray2 = str2.toCharArray(); //les tableaux de caractères sont convertis en tableau de caractères Arrays.sort(charArray1); Arrays.sort(charArray2); //trier le tableau de caractères //si les tableaux de caractères triés sont identiques boolean result = Arrays.equals(charArray1, charArray2); if(result) { System.out.println(str1 + " and " + str2 + " is an anagram."); } else { System.out.println(str1 + " and " + str2 + " is not an anagram."); } } } }
Output result
alors la chaîne est un anagramme
Java et Vaaj sont des anagrammes1et la chaîne de caractères de str2dans Java, nous avons deux noms de chaînes appelés str1et la chaîne de caractères de str2si les nombres de lettres alphabétiques sont les mêmes mais l'ordre est différent.
ici,
str1.toCharArray() - Convert the string to a char array
Arrays.sort() - trier deux tableaux de caractères
Arrays.equal() - vérifier si les tableaux de caractères triés sont égaux
si les tableaux triés sont égaux, alors la chaîne est un anagramme (anagramme).
import java.util.Arrays; import java.util.Scanner; class Main { public static void main(String[] args) { //créer un objet de la classe Scanner Scanner input = new Scanner(System.in); //accepter l'entrée de l'utilisateur System.out.print("Entrez la première chaîne de caractères: "); String str1 = input.nextLine(); System.out.print("Entrez la deuxième chaîne de caractères: "); String str2 = input.nextLine(); //vérifier si la longueur est la même if(str1.length() == str2.length()) { //Convert the string to a char array char[] charArray1 = str1.toCharArray(); char[] charArray2 = str2.toCharArray(); //Sort the char array Arrays.sort(charArray1); Arrays.sort(charArray2); //If the sorted char array is the same //Then the string is an anagram boolean result = Arrays.equals(charArray1, charArray2); if(result) { System.out.println(str1 + " and " + str2 + " is an anagram."); } else { System.out.println(str1 + " and " + str2 + " is not an anagram."); } } input.close(); } }
Output result
Enter the first string: Race Enter the second string: Care Race and Care are anagrams
In the above example, we useScannerThe class gets input from the user. Here, we check whether the string provided by the user is an anagram.