gpt4 book ai didi

Java If 和 Or 语句

转载 作者:行者123 更新时间:2023-12-01 18:05:41 26 4
gpt4 key购买 nike

以下语句工作正常,没有任何问题,但请有人解释一下为什么,我的印象是在 && 之前应该有一组额外的括号?然而,即使缺少 () ,它仍然有效。

if(returnt.getInt("date", iLoop) == Util.getBusinessDate()
&& returnt.getInt("ins_type", iLoop) == Ref.getValue(SHM_USR_TABLES_ENUM.INSTRUMENTS_TABLE, "DEPO")
|| returnt.getInt("ins_type", iLoop) == Ref.getValue(SHM_USR_TABLES_ENUM.INSTRUMENTS_TABLE, " DEPO2"))
{...}

最佳答案

我以前的大学教授曾经说过,也许不太恰当,多余的括号是给吃乳蛋饼的人和女孩的。

熟记运算符优先级表。您的代码相当于

if (((returnt.getInt("date", iLoop) == Util.getBusinessDate())
&& (returnt.getInt("ins_type", iLoop) == Ref.getValue(
SHM_USR_TABLES_ENUM.INSTRUMENTS_TABLE, "DEPO")))
|| (returnt.getInt("ins_type", iLoop) == Ref.getValue(
SHM_USR_TABLES_ENUM.INSTRUMENTS_TABLE, " DEPO2"))) {

首先评估==,然后评估&&,然后评估||。请注意,后两者是短路的,因此一旦知道结果,评估就会停止。

随着您经验的增加,您会发现我粘贴的版本更加难以阅读。

关于Java If 和 Or 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36619191/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com