当前位置: 首页 > 面试题库 >

如果简写为true,则多个语句if

艾凌龙
2023-03-14
问题内容

我最近发现了简写if语句,并且在网上搜索后找不到明确的答案。

如果条件为真/假,是否可以执行2条语句?

int x = (expression) ? 1 : 2;

例如

int x = (expression) ? 1 AND 2 : 3;

看到我没有碰到他们使用它的示例,我想这是不可能的,但我不想错过


问题答案:

您正在谈论条件分配。您应该查看所编写的内容所定义的内容:

int x = (expression) ? 1 AND 2 : 3;

那就是在评估“表达式”,如果是,则执行“ 1 AND 2”,然后将值赋给x。如果将“表达式”评估为假,则将评估“ 3”并将其分配给x。因此,您绝对可以执行以下操作:

int x = (expression) ? GetInt1() + GetInt2() : 345;

重要的是,您发现的不仅仅是if的简写。这是条件分配。



 类似资料:
  • 我有一个以字符串形式返回sql查询的方法。此方法考虑参数“level”,基于此参数有多个if-else语句,如 将来的级别数量会增加,我不想写讨厌的 if else 语句,所以我正在寻找适用于这种情况的更清洁且可维护的设计方法。我正在考虑策略设计模式,但不确定它是否最适合这种情况。

  • 假设我有一个类似下面的函数checkTime,我必须同时检查多个条件。 (上述示例是假设的) 我使用的函数完全有效,但是: 有没有更好的方法、程序或公式来取代这一点?(不必如此冗长或丑陋) Thanx!

  • 在Java(Eclipse)中,当有一个语句,如时,它最终会为true,但问题是,如果第一个语句为真,编译器会评估第二个语句吗?这对我来说很重要,因为如果变量为 null 或具有某个值,我需要执行一个操作。我的语句看起来像

  • 我正在尝试基于另一个具有lon的表创建geom表。我试图在表中创建两列,一列使用Spherical Mercator(SRID 4326,地理坐标系),另一列使用投影坐标系(SRID 3857)。以下是我的查询。 我收到以下错误 但是,如果我删除第二个select语句,它工作正常,我的意思是如果sql查询如下所示 如何使用第二个选择语句,如果它正常查询,我们可以使用从语句中选择。但是在这种情况下如

  • 目前在学校做信息技术评估,我的else声明遇到了问题。 代码: 不管怎样,为什么在if语句为真的情况下还要使用else语句呢?

  • 问题内容: 抱歉,是否曾经有人问过这个问题,但是我徒劳地寻找我 确切 问题的答案。基本上,对于Python 2.7,我有一个程序运行一系列地理处理工具,具体取决于用户在脚本中调整的一系列True / False变量所要求的内容,例如 但是,我现在发现x不必在字面上是“ True”即可运行该函数。例如: 因此,除False以外的任何值似乎都将评估为True,如果 x == True 或 x为True