English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Beispiel überprüfen wir, ob ein String eine gültige Umgruppierung der beiden anderen Strings in Java ist (Shuffle).
Um diesen Beispiel zu verstehen, sollten Sie die folgenden Kenntnisse habenJava-ProgrammierungThema:
class Main { //Überprüfen, ob der Ergebnis-String eine gültige Permutation der ersten und zweiten Strings ist static boolean shuffleCheck(String first, String second, String result) { //Überprüfen, ob die Länge des Ergebnisses mit //der Summe der Längen der ersten und zweiten Ergebnisse if(first.length() + second.length() != result.length()) { return false; } //verfolgen3Variablen für jeden Zeichen der beiden Strings int i = 0, j = 0, k = 0; //Durchsuchen Sie alle Zeichen des Ergebnisses while(k != result.length()) { //Überprüfen, ob das erste Zeichen des Ergebnisses mit dem ersten Zeichen des ersten Strings übereinstimmt if(i < first.length() && first.charAt(i) == result.charAt(k)){ i++; //Überprüfen, ob der erste Zeichen des Ergebnisses mit dem ersten Zeichen des zweiten Strings übereinstimmt } else if(j < second.length() && second.charAt(j) == result.charAt(k)){ j++; //wenn die Zeichen nicht übereinstimmen } else { return false; } //den nächsten Zeichen des Ergebnisses abfragen k++; } //nachdem alle Zeichen des Ergebnisses abgefragt wurden //wenn der erste oder zweite String einige Zeichen übrig lässt if(i < first.length() || j < second.length()) { return false; } return true; } public static void main(String[] args) { String first = "XY"; String second = ""12"; String[] results = {"1XY2", "Y12X"}; //Aufruf einer Methode, um zu überprüfen, ob der Ergebnis-String //Mischung von first und second for (String result : results) { if (shuffleCheck(first, second, result) == true) { System.out.println(result + " ist " + first + " und" + second + "gültige Neukombination"); } else { System.out.println(result + " nicht " + first + " und" + second+ "gültige Neukombination"); } } } }
Ausgaberesultat
1XY2 ist XY und 12 gültige Neukombination Y12X ist nicht XY und 12 gültige Neukombination
Im obigen Beispiel haben wir ein String-Array namens results. Es enthält zwei Zeichenfolgen:1XY2und Y12X. Wir überprüfen, ob diese beiden Zeichenfolgen gültige Zeichenfolgen first(XY) und second(12)
Hier sagt das Programm1XY2ist ein gültiges Mischen XY und12. Aber Y12X das ist kein gültiges Mischen.
Das ist weil Y12X hat die Reihenfolge der Zeichen geändert XY. Hierbei wird Y für das vorherige X verwendet. Daher sollte die Reihenfolge der Zeichen als gültige Neukombination beibehalten werden.