You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C#单行条件语句中实现字符串的逻辑或比较

可行的单行实现方案

以下几种方法可以在单行内完成判断,且只读取一次用户输入:

  • 忽略大小写比较(推荐,更严谨):
    利用StringComparison.OrdinalIgnoreCase忽略大小写,同时用?.处理输入为null的边界情况:

    if (Console.ReadLine()?.Equals("s", StringComparison.OrdinalIgnoreCase) == true)
    {
        // 匹配成功后的逻辑
    }
    
  • 统一转换大小写后比较:
    将输入转为小写(或大写)后和目标字符串比较,同样处理null:

    if (Console.ReadLine()?.ToLower() == "s")
    {
        // 匹配成功后的逻辑
    }
    
  • 用集合包含判断:
    如果后续需要匹配更多字符串,这种方式扩展性更强:

    if (new[] { "s", "S" }.Contains(Console.ReadLine()))
    {
        // 匹配成功后的逻辑
    }
    

原写法报错原因

C#中||是布尔逻辑或运算符,只能用于布尔值之间的判断,无法直接对字符串执行"s"||"S"这类操作——编译器无法将两个字符串转换为布尔值进行或运算,因此会抛出错误。

内容的提问来源于stack exchange,提问作者Muhammad Roshaan Saad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 00:05:46