C# 如何检查 if 语句的哪一部分是正确的 [关闭]

2024-03-01

我想知道如何检查 if 语句的哪一部分是正确的。例如,如果你有这个:

int a = 1, b, c, d;
    if(a > 0 || b > 1 || c > 2 || d > 3)
    {
        //do stuff
    }

现在在这种情况下,使 if 正确的是a。那么如何验证这一点呢? 基本上你可以将它们放在 4 个不同的 if 中,但是如果你必须为每个 if 执行重复的代码,你可能会想出一些方法来实现,但实际上是否有一种方法可以传递一些值?


当您不仅需要了解总体结果,还需要了解产生结果的项目时,这是一种方法true, 是将条件放入数组中,并执行 OR 链||你自己:

var conditions = new[] {a > 0, b > 1, c > 2, d > 3};
var whichOne = Array.IndexOf(conditions, true);
if (whichOne >= 0) {
    Console.WriteLine("Condition number {0} is true", whichOne);
} else {
    Console.WriteLine("The condition is false");
}

请注意,此方法不同于||链,因为它不短路评价。换句话说,在调用之前将评估所有四个条件IndexOf.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# 如何检查 if 语句的哪一部分是正确的 [关闭] 的相关文章

  • 如何在 C# 中知道 PID 和 VID 来发现虚拟 COM 端口名称

    如果我知道 PID 和 VID 我会尝试找到查找 COM 端口名称的正确方法 到目前为止 我写了解决方法 但我不相信没有更优雅和正确的方法 顺便说一句 我知道我可以使用 REGEX 编写此代码只是为了测试解决方法 我知道还有很大的改进空间
  • c# - 显示小数点到小数点后 6 位 [重复]

    这个问题在这里已经有答案了 可能的重复 具有 N 个小数位的 Double ToString https stackoverflow com questions 3059759 double tostring with n number o
  • 如果两个线程同时访问同一个 bool 变量会发生什么?

    我有一个跨平台 C 程序 其中使用 boost 库创建异步计时器 我有一个全局变量 bool receivedInput false 一个线程等待并处理输入 string argStr while 1 getline cin argStr
  • 如何将不记名令牌发送到 ASP NET MVC 5 中的视图?

    我有一个 NET MVC and WEB API项目 我想打电话给WEB API controllers来自 javascript 但我没有找到将令牌发送到我的视图的方法 我想添加bearer token in Viewbag变量 使用以下
  • C# 并行与并行线程代码性能

    我一直在测试 System Threading Parallel 与线程的性能 我很惊讶地发现并行比线程花费更长的时间来完成任务 我确信这是由于我对并行的了解有限 我刚刚开始阅读 我想我会分享一些片段 如果有人可以向我指出并行代码比线程代码
  • 当 f & g 修改同一个全局变量时,表达式 f() > g() 的值是否未定义或未指定?

    UPDATE 由用户标记ecatmur 它是重复的在 C99 中 f g 是未定义还是只是未指定 https stackoverflow com questions 3951017 in c99 is fg undefined or mer
  • 比较 LINQ to SQL 中的两个日期

    我有一个数据库 其中有一个名为会议的表 会议日期使用以下格式存储在此表中 May 2nd 2011 例如 格式为5 2 2011 我的要求是获取两个日期 例如 2011 年 4 月 25 日和 2011 年 5 月 2 日 之间的会议 并编
  • 修剪 UIImage 边框

    这是我想要修剪的图像的示例 我想去掉图像周围的边框 在本例中是顶部和底部的黑条 我在Github上找到了一个库 CKImageAdditions https github com cmkilger CKImageAdditions 但是它似
  • 多维数组和指向指针的指针

    创建多维数组时char a 10 10 根据我的书 它说你必须使用类似于char a 10 将数组传递给函数 为什么必须这样指定长度 您不是只是将双指针传递给 with 并且该双指针不是已经指向分配的内存吗 那么为什么参数不能是char a
  • 函数指针上的未知类型 F TYPE

    include
  • 试图使用加密来混淆我的项目打破了它

    我试图尝试不同的混淆选项 为了做到这一点 我首先尝试了加密货币 以下是我遵循的步骤 打开加密向导并选择一些选项 选择我的解决方案文件 完成向导后 我看到有些 Dll 被很好地混淆了 但我的项目现在无法构建 我注意到的两件事是 我的文件夹中有
  • 如何删除实体框架6中的多对多关系

    如果将项目连接为多对多关系 则从数据库中删除项目时会出现问题 我的数据库看起来像 Project lt JobInProject gt Job ProjectID JobInProjectID JobID ProjectID JobID 主
  • 如何在Azure功能中添加razor视图文件?

    我正在创建一个应用程序 它是 azure 函数项目 我想在该项目中使用 Razor 视图 我应该在 azure 函数中使用任何模板引擎吗 得益于一些方面的进步剃刀之光项目 https github com toddams RazorLigh
  • 如何从Web JavaScript应用程序获取桌面C#程序中的变量

    我遇到一个问题 有两个应用程序 一种是 C 中的桌面应用程序 另一种是 javascript 中的 Web 应用程序 运行桌面应用程序中的一些变量或信息需要传输到Web应用程序 有谁知道如何解决这个问题 有人愿意提供更多细节来解决这个问题吗
  • Identity Server 4:添加访问令牌的声明

    我正在使用 Identity Server 4 和隐式流 并且想要向访问令牌添加一些声明 新的声明或属性是 tenantId 和 langId 我已将 langId 添加为我的范围之一 如下所示 然后通过身份服务器请求 但我也获得了tena
  • 执行存储过程时 ExecuteNonQuery() 返回 -1

    我正在尝试在 Visual Studio 中执行存储过程 下面给出 CREATE PROCEDURE dbo addStudent stuName varchar 50 address varchar 100 tel varchar 15
  • Nuget - 对象引用未设置为对象的实例

    我在 vs 2015 中遇到了 nuget 包管理器的问题 像Unity这样的一些包已经安装没有问题了 某些软件包 例如 EF 在安装时出现问题 像 Automapper 这样的一些软件包也有同样的问题 但是当我安装这个软件包的另一个版本时
  • C 中的链表数组:初始化和插入?

    我需要创建一个链表数组 如图所示 这就是我到目前为止所做的 typedef struct Node int data struct Node next Node int main void Node link 5 for int q 0 q
  • 类型别名和不完整类型

    我可能已经超出了解决这个本应简单的问题的范围 我在这里开始这个问题 在编译时获取基类的类型 https stackoverflow com questions 17735852 getting type of a base class at
  • char[length]初始化并处理

    我定义了一个字符数组 char d 6 如果我在以下方面有误 请纠正我 此时没有为变量分配内存d 现在我要初始化它 d aaaaa 这种初始化之后 就不需要释放内存了 它将自动完成 我怎么知道是否char 被初始化了吗 我正在寻找类似的模式

随机推荐

  • 拉直弯曲轮廓

    给定一个具有易于识别边缘的轮廓 如何拉直它及其内容 如图所示 检测黑色边缘并为其拟合样条曲线 从该样条线上 您将能够绘制法线 并沿着它定期标记点 这形成了易于拉直的 u v 网格 要计算目标图像 请绘制水平行 这些行对应于源中的特定法线 然
  • 进入智能指针,如何处理代表所有权?

    我制作了一个动态图结构 其中节点和弧都是类 我的意思是弧是内存中的实际实例 它们并不是由节点到节点的邻接列表暗示的 每个节点都有一个指向它所连接的弧的指针列表 每个弧都有 2 个指针 指向它所连接的 2 个节点 删除节点会调用其每条弧的de
  • 绑定到127.0.0.2

    我在 Windows XP PC 上本地运行客户端 服务器应用程序 出于测试目的 我想运行多个客户端 服务器有一个配置文件 其中包含可以连接的客户端的IP地址 在现实世界中 这些都将位于具有不同 IP 地址的不同主机上 目前我可以使用绑定到
  • 如何使用自定义适配器对 listView 进行排序

    我正在制作一个应用程序 其中显示状态为在线和离线的人数 目前ListView是根据api设置的 我想根据人员的在线状态对 listView 进行排序 例如 如果没有 的人在线 然后列表视图首先显示他们 我在我的项目中实现了延迟加载图像 这是
  • 允许模拟类继承最终类

    我们可以使用 new C 关键字声明一个最终 密封的不可继承类final class Generator final 这个类可以从其他类继承 可以有也可以没有virtual 继承或不继承 但是 如何制作呢final 但允许一个类继承它 我们
  • div 内的垂直对齐范围[重复]

    这个问题在这里已经有答案了 http jsfiddle net UmHNL 2 http jsfiddle net UmHNL 2 div class container span Some text yay span div div cl
  • com.android.builder.testing.api.DeviceException:没有连接的设备!詹金斯错误

    我在 Windows 7 机器上安装了 Jenkins 2 73 1 没有从站 构建 Android 应用程序设置只有一项工作 我有connectedCheckgradle 任务作为作业构建过程的一部分执行 当我重新启动计算机并运行 Jen
  • 可拖动项目总是下降约 80px

    我对可拖动项目有奇怪的行为 每次我将它拖到我的堆栈上时 它都会从放置位置向下下降约 80px 这是一个近似值 也许对于另一部手机 它可能是其他值 x 值对我来说似乎没问题 这是代码 class GesturePage extends Sta
  • 如何在 DefaultRouter() 中进行反向操作

    我正在设置一个新的测试 并且我想进行相反的操作 router DefaultRouter router register profile views UserProfileViewSet base name profile urlpatte
  • 如何动态更改 Apollo Web Socket Link URI?

    目前我已经设置了 Apollo websocket 链接 如下所示 const wsLink new WebSocketLink uri ws example com graphql token getToken options recon
  • 如何将 Git 存储库从 Beanstalk 移至 Github?

    我的代码仓库在豆茎 http beanstalkapp com 如何将代码从 Beanstalk 移至Github https github com 建议的方法是 git clone bare url for beanstalk repo
  • R:如何从日期中删除当天? [复制]

    这个问题在这里已经有答案了 我在 df 列中有一堆日期 格式如下 dd mm yyyy 我希望它看起来像这样 01 2020 mm yyyy 如何从所有日期中删除这一天 Use format指定您想要的日期格式 date lt as Dat
  • 从多个 JavaScript 线程访问 IndexedDB

    概述 我试图避免从网页和网络工作人员访问 IndexedDB 时出现竞争情况 Setup 当用户使用站点时将项目保存到本地 IndexedDB 的网页 每当用户将数据保存到本地数据库时 记录就会被标记为 未发送 Web worker 后台线
  • 每当在树视图中添加新节点时创建事件处理程序

    我想编写一个自定义类 每当我向树视图添加一个节点时 它都应该调用一个事件 这样我就可以递归地运行它 我很少使用TreeView 但乍一看这是我的第一印象 由于无法继承 TreeViewCollection 因此您可能必须在新类上创建一个单独
  • 如何获得像Instagram一样1:1比例的Android Camera2?

    我的问题很简单 如何获得安卓系统android hardware Camera2像 Instagram 一样 1 1 比例且不变形 我用 GoogeSamples 项目进行了测试android Camera2Basic https gith
  • Mac OS X 虚拟环境中的 Python 安装是否包含一个可以包含到 Xcode 中的框架?

    我喜欢将 Python 与 numpy scipy 和其他一些包一起使用 我是一个绝对的 Python 初学者 在 Mac OS X 下安装时遇到一些问题 我按照这两个教程来安装 python 1 http hackercodex com
  • 使用 jQuery AJAX 调用类方法?

    我正在从 PHP AJAX 库 xajax 迁移到 jQuery AJAX 使用 xajax 我可以通过将公共类方法绑定到 javascript 函数名称 例如 this gt registerFunction javascriptFunc
  • wpf 网格最佳实践

    我有一个包含许多标签 组合框和文本框的网格 我在每个单元格中都放置了标签和组合框 最佳实践是什么 1 将组合框和标签放入堆栈面板中 然后将其放入单元格中 2 只需将两个控件直接放入网格单元格中 两种方法的优点和缺点是什么 谢谢 将两个控件放
  • 在 Java 中,写入文件比迭代数组慢多少? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我意识到一般来说写入速度较慢 但我想知道是多少 我在服务器类中有一些代码写入日志文件 if inputLine equals y Syste
  • C# 如何检查 if 语句的哪一部分是正确的 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想知道如何检查 if 语句的哪一部分是正确的 例如 如果你有这个 int a 1 b c d if a gt 0 b gt 1 c