Eine Zeichenfolge oder eine Zahl wird als Palindrom bezeichnet, wenn sie auch nach der Umkehrung gleich bleibt. Beispielsweise ist ?MADAM“ eine Palindrom-Zeichenfolge, da sie auch in umgekehrter Reihenfolge als ?MADAM“ geschrieben wird. Aber im Fall von ?LUCKY“ ist diese Zeichenfolge kein Palindrom, da sie umgekehrt ?YKCUL“ ist. Einige der Palindromnummern sind 365563, 48984, 12321, 171, 88, 90009, 343 und einige der Palindromzeichenfolgen sind MADAM, MALAYALAM, LOL, DAD, MOM, C++&++C usw. Sehen wir uns in den folgenden Abschnitten die Logik und Implementierung des Palindroms an. In diesem Thema lernen wir das Palindrom in Java kennen.
Starten Sie Ihren kostenlosen Softwareentwicklungskurs
Webentwicklung, Programmiersprachen, Softwaretests und andere
Logik hinter Palindrom in Java
Um zu überprüfen, ob eine Zahl ein Palindrom ist, kann der folgende Algorithmus verwendet werden.
- Nehmen Sie eine Eingabezeichenfolge oder -zahl, die überprüft werden muss, ob es sich um ein Palindrom handelt oder nicht.
Nehmen wir zum Beispiel die Zahl 353 als Eingabe.
- Nehmen Sie die eingegebene Zahl und kopieren Sie sie in eine tempor?re Variable
353-> temp
- Kehren Sie es um, indem Sie for, while oder eine beliebige Methode Ihrer Wahl verwenden.
Reversednumber: rev=353
- Vergleichen Sie die eingegebene Zahl und die umgekehrte Zahl.
Wenn sie gleich sind, spricht man von einer Palindromzahl.
Andernfalls handelt es sich bei der Zahl nicht um eine Palindromzahl.
d.h.
If(inputnum==rev) { then palindrome } Else not palindrome
Wie teste ich Palindrom mit verschiedenen Methoden?
Es gibt mehrere Methoden, um zu überprüfen, ob die angegebene Eingabenummer ein Palindrom ist oder nicht.
- For-Schleife
- While-Schleife
- Bibliotheksmethode (für Zeichenfolgen)
Lassen Sie uns jeden einzelnen davon im Detail betrachten:
1. Programm zur überprüfung der Palindromzahl mithilfe einer for-Schleife
Code:
//Java program to check whether a String is a Palindrome or not using For Loop import java.util.*; public class PalindromeNumberExample { //main method public static void main(String[] args) { int r=0 ; //reversed Integer int rem, num; //remainder and original number Scanner s = new Scanner(System.in); System.out.print("Enter number that has to be checked:"); num = s.nextInt(); //Store the number in a temporary variable int temp = num; //loop to find the reverse of a number for( ;num != 0; num /= 10 ) { rem = num % 10; // find the modulus of the number when divided by 10 r = r * 10 + rem; } //check whether the original and reversed numbers are equal if (temp == r) { System.out.println(temp + " is input number"); System.out.println(r + " is the reversed number"); System.out.println("Since they are equal " + temp + " is a palindrome number"); } else { System.out.println(temp + " is input number"); System.out.println(r + " is the reversed number"); System.out.println("Since they are not equal " + temp + " is not a palindrome number"); } } }
Ausgabe 1:
Da 353 umgekehrt dasselbe ist, wird es als Palindrom betrachtet.
Ausgabe 2:
Da 234 bei Umkehrung nicht gleich bleibt, wird es hier nicht als Palindrom betrachtet.
2. Programm zur überprüfung der Palindromzahl mithilfe der While-Schleife
Code:
//Java program to check whether a number is a Palindrome or not using While Loop import java.util.*; public class PalindromeNumberExample { public static void main(String[] args) { int r=0, rem, num; Scanner s = new Scanner(System.in); System.out.print("Enter number that has to be checked:"); num = s.nextInt(); //Store the number in a temporary variable int temp = num; //loop to find the reverse of a number while( num != 0 ) { rem= num % 10; r= r * 10 + rem; num=num/10; } //check whether the original and reversed numbers are equal if (temp == r) { System.out.println(temp + " is input number"); System.out.println(r + " is the reversed number"); System.out.println("Since they are equal " + temp + " is a palindrome number"); } else { System.out.println(temp + " is input number"); System.out.println(r + " is the reversed number"); System.out.println("Since they are not equal " + temp + " is not a palindrome number"); } } }
Ausgabe 1:
Ausgabe 2:
3. Programm zur überprüfung der Palindromzahl mithilfe der Bibliotheksmethode (für Zeichenfolgen)
Code:
//Java program to check whether a String is a Palindrome or not using Library method import java.util.*; public class PalindromeNumberExample { //Function to check whether the string is palindrome or not public static void PalindromeCheck(String str) { // reverse the input String String rev = new StringBuffer(str).reverse().toString(); // checks whether the string is palindrome or not if (str.equals(rev)) { System.out.println("input string is :" + str); System.out.println("Reversed string is :" + rev); System.out.println("Since the input and reversed string are equal, "+ str +" is a palindrome"); } else { System.out.println("input string is :" + str); System.out.println("Reversed string is :" + rev); System.out.println("Since the input and reversed string are not equal, "+ str +" is not a palindrome"); } } public static void main (String[] args) { PalindromeCheck("MALAYALAM"); } }
Ausgabe:
Hier wird die Eingabezeichenfolge im Programm selbst übergeben.
Um zu überprüfen, ob eine Zeichenfolge ein Palindrom ist, wird auch das folgende Programm verwendet.
Code:
//Java program to check whether a String is a Palindrome or not import java.util.*; public class PalindromeNumberExample { public static void main(String args[]) { String st, rev = ""; Scanner sc = new Scanner(System.in); System.out.println("Enter the string that has to be checked:"); st = sc.nextLine(); int len = st.length(); //length of the string for ( int i = len- 1; i >= 0; i-- ) rev = rev + st.charAt(i); if (st.equals(rev)) { System.out.println("input string is :" + st); System.out.println("Reversed string is :" + rev); System.out.println("Since the input and reversed string are equal, "+ st +" is a palindrome"); } else { System.out.println("input string is :" + st); System.out.println("Reversed string is :" + rev); System.out.println("Since the input and reversed string are not equal, "+ st +" is not a palindrome"); } } }
Ausgabe:
Fazit
Eine Zahl wird als Palindrom bezeichnet, wenn sie auch dann gleich bleibt, wenn sie umgekehrt wird. Ein Palindrom kann auch in Strings überprüft werden. Einige der Zahlen und Zeichenfolgen des Palindroms sind MOM, MALAYALAM, DAD, LOL, 232, 1331 usw. In diesem Dokument werden verschiedene Aspekte des Palindroms behandelt, z. B. Algorithmus, Methoden, Implementierung usw.
Das obige ist der detaillierte Inhalt vonPalindrom in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen





Laravel unterstützt die Verwendung nativer SQL -Abfragen, aber die Parameterbindung sollte bevorzugt werden, um die Sicherheit zu gew?hrleisten. 1. Verwenden Sie db :: select (), um Auswahlabfragen mit Parameterbindung auszuführen, um die SQL -Injektion zu verhindern. 2. Verwenden Sie db :: update (), um Aktualisierungsvorg?nge durchzuführen und die Anzahl der betroffenen Zeilen zurückzugeben. 3.. Verwenden Sie db :: Insert (), um Daten einzufinden. 4. Verwenden Sie db :: delete (), um Daten zu l?schen; 5. Verwenden Sie db :: Anweisung (), um SQL -Anweisungen ohne Ergebniss?tze wie Erstellen, Alter usw. auszuführen; 6. Es wird empfohlen, in QueryBuilder in der Lage zu verwenden, native Ausdrücke zur Verbesserung der Sicherheit zu kombinieren, um die Sicherheit zu verbessern

Verwenden Sie JUNIT5 und Mockito, um Abh?ngigkeiten für Unit -Tests effektiv zu isolieren. 1. Erstellen Sie ein Mock -Objekt über @mock, @InjectMocks injizieren die getestete Instanz, @extendWith erm?glicht die Mockito -Erweiterung. 2. verwenden Sie, wenn (). Thatreturn (), um das Simulationsverhalten zu definieren, verifizieren (), um die Anzahl der Methodenaufrufe und Parameter zu überprüfen. 3. kann die Ausnahmszenarien simulieren und die Fehlerbehandlung überprüfen; 4.. Konstruktorinjektion empfehlen, übersimulierung vermeiden und die Testeratomizit?t beibehalten. 5. Verwenden Sie Assertall (), um Behauptungen zusammenzuführen, und @Nested organisiert die Testszenarien, um die Wartbarkeit und Zuverl?ssigkeit der Tests zu verbessern.

Go Generics werden seit 1.18 unterstützt und zum Schreiben von generischen Code für Typ-Safe verwendet. 1. Die generische Funktion printslice [tany] (s [] t) kann Scheiben jeglicher Art drucken, z. B. [] int oder [] String. 2. Durch die Typenbeschr?nkungsnummer begrenzt t auf numerische Typen wie int und float, summe [tNumber] (Slice [] t) T Safe Summation wird realisiert. 3. Die generische Struktur -TypBox [tany] struct {valuet} kann jeden Typwert in Einklang bringen und mit dem NewBox [Tany] (VT)*Box [t] Constructor verwendet werden. 4. Set (vt) hinzufügen und () t () t zum Boxen [t] ohne boxen

TABLE-LAYOUT: Behoben erzwingt die Tabellenspaltenbreite, die durch die Zellbreite der ersten Zeile bestimmt wird, um den Inhalt zu vermeiden, der das Layout beeinflusst. 1. Set Table-Layout: Behoben und geben Sie die Tabellenbreite an; 2. Setzen Sie das spezifische Verh?ltnis der Spaltenbreite für die erste Zeile th/td; 3. Verwenden Sie den wei?en Raum: Nowrap, überlauf: versteckt und textüberfluss: Ellipsis zum Steuerung des Textüberlaufs; 4. Für Hintergrundverwaltung, Datenberichte und andere Szenarien, die ein stabiles Layout und eine Hochleistungsrendern erfordern, die das Layout-Jitter effektiv verhindern und die Renderneffizienz verbessern k?nnen.

JSON.Loads () wird verwendet, um JSON -Zeichenfolgen in Python -Datenstrukturen zu analysieren. 1. Die Eingabe muss eine in doppelte Zitate eingewickelte Zeichenfolge sein und der boolesche Wert ist wahr/falsch. 2. unterstützt die automatische Konvertierung von Null → Keine, Objekt → DICT, Array → Liste usw.; 3. Es wird oft verwendet, um JSON -Zeichenfolgen zu verarbeiten, die von der API zurückgegeben werden. Auf Response_String kann beispielsweise nach der Parsen von JSON.Loads () direkt zugegriffen werden. Bei der Verwendung müssen Sie sicherstellen, dass das JSON -Format korrekt ist, andernfalls wird eine Ausnahme ausgel?st.

ChoosetheApprotedeIntexTe -basedonusecase, SuchAssinglefield, Compound, Multikey, Text, Geospatial, orttlindexes.2.ApplyTheesrRuewhencreatedCompoundIndexesByorderingfieldsasequalit?t, Sorte

Maven ist ein Standardwerkzeug für Java -Projektmanagement und -aufbau. Die Antwort liegt in der Tatsache, dass Pom.xml verwendet wird, um Projektstruktur, Abh?ngigkeitsmanagement, Konstruktionslebenszyklusautomation und Plug-in-Erweiterungen zu standardisieren. 1. Verwenden Sie POM.xml, um Gruppen, Artefaktid, Version und Abh?ngigkeiten zu definieren; 2. Master -Kernbefehle wie MVNClean, Compile, Test, Paket, Installation und Bereitstellen; Fn. V. 5.

In Python ist die übertragung von Funktionsargumenten "Objektreferenz", dh für ver?nderliche Objekte (wie Listen und W?rterbücher), in-situ-Modifikationen (z. B. Anhang, Zuweisungsscheibe) innerhalb der Funktion wirkt sich direkt auf das ursprüngliche Objekt aus. 2. Für unver?nderliche Objekte (wie Ganzzahlen, Zeichenfolgen) kann das ursprüngliche Objekt in der Funktion nicht ge?ndert werden, und die Neuzuweisung erzeugt nur ein neues Objekt. 3. Die Parameter passieren eine Kopie der Referenz. Wenn die Variable in der Funktion (z. B. LST = [...]) wiederhergestellt wird, wird die Verbindung mit dem ursprünglichen Objekt nicht beeinflusst und die externe Variable nicht betroffen. Das ?ndern ver?nderlicher Objekte wirkt sich daher auf die ursprünglichen Daten aus, w?hrend unver?nderliche Objekte und Neuzuweisungen dies nicht tun, was erkl?rt, warum die Liste nach der Modifikation innerhalb der Funktion extern sichtbar ist, w?hrend die Zahlung von Ganzzahl nur lokal sind.
