如何最好地将此Java方法转换为C#?
我想把我的Java代码翻译成C语言,但是我很难找到如何最好地将此Java方法转换为C#?,c#,java,C#,Java,我想把我的Java代码翻译成C语言,但是我很难找到String.equalsIgnoreCase和StringBuffer的等价物 这是我的Java语法: public static boolean isPalindrom (String _text) { return _text.equalsIgnoreCase(new StringBuffer(_text).reverse().toString()); } 这是我的C代码 那么这个呢: public static bool is
String.equalsIgnoreCase
和StringBuffer
的等价物
这是我的Java语法:
public static boolean isPalindrom (String _text)
{
return _text.equalsIgnoreCase(new StringBuffer(_text).reverse().toString());
}
这是我的C代码
那么这个呢:
public static bool isPalindrome(string _text)
{
return _text.SequenceEqual(_text.Reverse());
}
public static bool isPalindrome(string _text)
{
var halfLen = (int)Math.Ceiling(_text.Length / 2.0);
return _text.Take(halfLen).SequenceEqual(_text.Reverse().Take(halfLen));
}
和都是Linq的扩展方法。当然,您不必检查每个字符来测试字符串是否为回文。那么这个呢:
public static bool isPalindrome(string _text)
{
return _text.SequenceEqual(_text.Reverse());
}
public static bool isPalindrome(string _text)
{
var halfLen = (int)Math.Ceiling(_text.Length / 2.0);
return _text.Take(halfLen).SequenceEqual(_text.Reverse().Take(halfLen));
}
要使此方法不区分大小写,只需执行以下操作:
public static bool isPalindrome(string _text)
{
_text = _text.ToUpperInvariant();
var halfLen = _text.Length / 2;
return _text.Take(halfLen).SequenceEqual(_text.Reverse().Take(halfLen));
}
为什么要这样做呢?我想翻译这个java代码返回_text.equalsIgnoreCase(newStringBuffer(_text.reverse().toString());对于c#…我有困难..StringBuffer在c中不适用,好吧,我想你解决了我的问题