Palindrom-String in C# prüfen
-
Palindrom-String mit der Methode
String.Substring()
in C# prüfen -
Überprüfen Sie den Palindrom-String mit der LINQ-Methode in
C#
In diesem Tutorial werden die Methoden vorgestellt, mit denen überprüft werden kann, ob eine Zeichenkette in C# palindrom ist oder nicht.
Palindrom-String mit der Methode String.Substring()
in C# prüfen
Eine Zeichenkette wird als Palindrom betrachtet, wenn sie vorwärts und rückwärts gleich gelesen wird. Leider gibt es keine integrierte Methode, um zu überprüfen, ob ein String in C# ein Palindrom ist oder nicht. Wir können jedoch die Methode String.Substring()
verwenden, um den String von der Mitte zu trennen und die erste Hälfte zu erhalten. Wir können die Umkehrung der zweiten Hälfte erzielen, indem wir die Zeichenkette in ein Array von Zeichen konvertieren, die Zeichenkette mit der Methode Array.Reverse()
umkehren, das umgekehrte Array in eine Zeichenkette konvertieren und dann die neue Zeichenkette von aufteilen die Mitte mit der Methode String.Substring()
. Wenn die erste Hälfte der Rückseite der zweiten Hälfte entspricht, ist die Saite ein Palindrom. Wenn die erste Hälfte nicht der zweiten Hälfte entspricht, ist die Zeichenkette kein Palindrom. Das folgende Codebeispiel zeigt uns, wie wir mit der Methode String.Substring()
in C# überprüfen können, ob ein String ein Palindrom ist oder nicht.
using System;
using System.Linq;
namespace palindrome {
class Program {
public static bool checkPalindrome(string mainString) {
string firstHalf = mainString.Substring(0, mainString.Length / 2);
char[] arr = mainString.ToCharArray();
Array.Reverse(arr);
string temp = new string(arr);
string secondHalf = temp.Substring(0, temp.Length / 2);
return firstHalf.Equals(secondHalf);
}
static void Main(string[] args) {
bool palindrome = checkPalindrome("12321");
Console.WriteLine(palindrome);
}
}
}
Ausgabe:
True
Im obigen Code haben wir mit der Methode String.Substring()
in C# geprüft, ob der String 12321
ein Palindrom ist oder nicht.
Überprüfen Sie den Palindrom-String mit der LINQ-Methode in C#
Die Methode SequenceEqual()
im LINQ vergleicht zwei Folgen von Elementen in C#. Die Methode Reverse()
im LINQ kehrt die Elemente einer Sequenz in C# um. Wir können die Methode Reverse()
verwenden, um unsere Zeichenkette umzukehren und sie mit der Methode SequenceEqual()
mit der ursprünglichen Zeichenkette zu vergleichen. Das folgende Codebeispiel zeigt uns, wie wir mit der LINQ-Methode in C# überprüfen können, ob eine Zeichenkette ein Palindrom ist oder nicht.
using System;
using System.Linq;
namespace palindrome {
class Program {
public static bool checkPalindrome2(string mainString) {
return mainString.SequenceEqual(mainString.Reverse());
}
static void Main(string[] args) {
bool palindrome = checkPalindrome2("12321");
Console.WriteLine(palindrome);
}
}
}
Ausgabe:
True
Im obigen Code haben wir mit den Methoden SequenceEqual()
und Reverse()
in C# geprüft, ob die Zeichenkette 12321
ein Palindrom ist oder nicht. Dieser Ansatz wird gegenüber dem vorherigen Ansatz bevorzugt, da er einfacher ist.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedInVerwandter Artikel - Csharp String
- C# Int in String konvertieren
- C# String in Enum konvertieren
- Verwendung von Strings in der Switch-Anweisung in C#
- So konvertieren Sie eine Zeichenkette in ein Byte-Array in C#
- Wie konvertiert man eine Zeichenkette in C# in boolesche Zeichenketten
- Wie schreibt man ein mehrzeiliges String-Literal in C#