帮助检查字符串中的数值是否为奇数 C#

发布于 2024-11-16 23:11:37 字数 270 浏览 2 评论 0原文

我有方法 GetOption(5) 返回值 5K23 并且我需要获取字符串的最后两个字符,该值是一个字符串值,所以我需要使用我尝试过的Substring

if( Convert.ToInt32(GetOption(5).Substring(GetOption(5).Length-2, 2) % 2 == 1) )

我似乎无法正确执行,任何人都可以帮助我。

谢谢

I have the method GetOption(5) that returns the value 5K23 and I need to get the last two characters of the string the thing is the value is a string value, so I would need to use Substring I have tried doing:

if( Convert.ToInt32(GetOption(5).Substring(GetOption(5).Length-2, 2) % 2 == 1) )

I can't seem to get it right, can anyone help me out.

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

醉酒的小男人 2024-11-23 23:11:37

您实际上并不需要最后两位数字来确定数字是否为奇数

var option = GetOption(5);
var isOdd = int.Parse(option[option.Length - 1].ToString()) % 2 == 1;

You don't really need last two digits to determine whether number is odd

var option = GetOption(5);
var isOdd = int.Parse(option[option.Length - 1].ToString()) % 2 == 1;
岁月流歌 2024-11-23 23:11:37
var t = "5K23";
var regex = new Regex(@"\d{2}$");
var match = regex.Match(t);
if (match.Success)
{
    var extracted = match.Value;
    // Do more stuff
}
var t = "5K23";
var regex = new Regex(@"\d{2}$");
var match = regex.Match(t);
if (match.Success)
{
    var extracted = match.Value;
    // Do more stuff
}
深巷少女 2024-11-23 23:11:37

我喜欢@Lukáš的回答 (+1) 但是您的代码不起作用的原因是...

Convert.ToInt32
(
    GetOption(5).Substring
    (
        GetOption(5).Length-2, 2
    ) % 2 == 1
)

括号分组不正确。您正在通过<长东西> % 2 == 1Convert.ToInt32()

尽量保持行简短易读。

var s = GetOption(5);
if(Convert.ToInt32(s.Substring(s.Length-2, 2)) % 2 == 1)
{
    // do stuff
}

I like @Lukáš' answer (+1) but the reason your code doesn't work is...

Convert.ToInt32
(
    GetOption(5).Substring
    (
        GetOption(5).Length-2, 2
    ) % 2 == 1
)

Incorrect paren grouping. You're passing <long thing> % 2 == 1 to Convert.ToInt32().

Try to keep lines short and readable.

var s = GetOption(5);
if(Convert.ToInt32(s.Substring(s.Length-2, 2)) % 2 == 1)
{
    // do stuff
}
才能让你更想念 2024-11-23 23:11:37
    int x;
    string option = GetOption(5);
    if (Int32.TryParse(option.Substring(option.Length - 2), out x) && x % 2 == 1)
    int x;
    string option = GetOption(5);
    if (Int32.TryParse(option.Substring(option.Length - 2), out x) && x % 2 == 1)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文