如何用反向方法创建回文
How to create Palindrome with Reverse method
我正在学习 C#,但我只是在完成一些创建 Palindrome 函数的简单任务。我决定将字符串更改为字符数组,然后使用反向方法并将初始字符数组与反向数组进行比较。但是在 if 语句中使用 reverse 方法似乎不起作用,或者我在其他地方弄错了??
void IsPalindrome(string x)
{
bool isEqual = true;
char[] charArr = x.ToCharArray();
char[] reversed = charArr;
Array.Reverse(reversed);
for (int i = 0; i < reversed.Length; i++)
{
if (reversed[i] != charArr[i])
{
isEqual = false;
}
}
if (isEqual == true)
{
Console.WriteLine($"True, {x.Length}");
}
else
{
Console.WriteLine($"False, {x.Length}");
}
}
Console.WriteLine("Type a string:");
string? userString = Console.ReadLine();
IsPalindrome(userString);
charArr 和 reversed 指向内存中的相同地址。试试这个:
void IsPalindrome(string x)
{
bool isEqual = true;
char[] reversed = x.ToCharArray();
Array.Reverse(reversed);
for (int i = 0; i < reversed.Length; i++)
{
if (reversed[i] != x[i])
{
isEqual = false;
}
}
if (isEqual == true)
{
Console.WriteLine($"True, {x.Length}");
}
else
{
Console.WriteLine($"False, {x.Length}");
}
}
Console.WriteLine("Type a string:");
string? userString = Console.ReadLine();
IsPalindrome(userString);
我正在学习 C#,但我只是在完成一些创建 Palindrome 函数的简单任务。我决定将字符串更改为字符数组,然后使用反向方法并将初始字符数组与反向数组进行比较。但是在 if 语句中使用 reverse 方法似乎不起作用,或者我在其他地方弄错了??
void IsPalindrome(string x)
{
bool isEqual = true;
char[] charArr = x.ToCharArray();
char[] reversed = charArr;
Array.Reverse(reversed);
for (int i = 0; i < reversed.Length; i++)
{
if (reversed[i] != charArr[i])
{
isEqual = false;
}
}
if (isEqual == true)
{
Console.WriteLine($"True, {x.Length}");
}
else
{
Console.WriteLine($"False, {x.Length}");
}
}
Console.WriteLine("Type a string:");
string? userString = Console.ReadLine();
IsPalindrome(userString);
charArr 和 reversed 指向内存中的相同地址。试试这个:
void IsPalindrome(string x)
{
bool isEqual = true;
char[] reversed = x.ToCharArray();
Array.Reverse(reversed);
for (int i = 0; i < reversed.Length; i++)
{
if (reversed[i] != x[i])
{
isEqual = false;
}
}
if (isEqual == true)
{
Console.WriteLine($"True, {x.Length}");
}
else
{
Console.WriteLine($"False, {x.Length}");
}
}
Console.WriteLine("Type a string:");
string? userString = Console.ReadLine();
IsPalindrome(userString);