当前位置:首页 > 每日看点 > 正文内容

在JA里面还推荐使用尤达表示法吗?oj==null这种写法?

卡卷网7个月前 (01-10)每日看点133

<>尤达表示法:Ja中的“丑陋写法”?

if(null==oj){ //Dosomething }

这种写法就是我们常说的<>尤达表示法(YodaConditions),名字来源于《星球大战》里的角色尤达,因为这种写法像是反着说话,<>看起来非常不自然。

那<>在Ja代码中,尤达表示法到底是否应该继续使用?

<>尤达表示法为什么出现?

尤达表示法的由来其实很简单:最早的时候,许多编程语言(包括C和C++)的开发者常常使用这种方式,<>主要是为了避免某些编译器的潜在错误或编程不规范所带来的问题。

<>1.防止赋值错误

在早期的C/C++编程中,开发者如果不小心写成了:

if(oj=null){ //Dosomething }

这段代码就会发生错误,因为=是赋值作符,表示给oj赋值为null,而不是较oj是否等于null。但如果写成null==oj,编译器就会强制把null作为常量放在左边,防止误用=符号,<>避免将较作写成赋值作。

<>2.旧时代的代码习惯

在早期,很多C/C++的开发者习惯性地使用尤达表示法,以防止将“==”误写成“=”(赋值符号),这成为了一种编程习惯。不过,在现在这种需求已经大大减少了。

<>现代Ja:尤达表示法的弊端

<>1.可读性差

尤达表示法的最大问题就是<>可读性差。对于现发者来说,null==oj看起来就像是倒过来的句子,<>不自然也不直观。

你直接看到oj==null,会立刻明白意思:如果对象为空,执行某个作。而null==oj则让人一时摸不着头脑,反而让代码显得更加晦涩。

<>2.现代IDE也会帮你检查

如今的大多数现代IDE(如<>InliJIDEA或<>Eclipse)都已经能很容易地捕捉到潜在的错误,如果你写了oj=null,它会立刻提示你“可能是写错了”,并提醒你检查代码。因此,<>用null==oj来防止赋值错误,已经不再是必需的。

3.这种写法如今也是少之又少了

现代Ja编程的推荐写法是<>左值在前,右值在后。Ja中的普遍约定就是先写对象再写值(如oj==null),这样不仅符合语言习惯,也符合大多数开发者的直觉。这个习惯更加符合Ja语言的语法和阅读习惯。


<>那么,究竟要不要继续使用尤达表示法?

<>没必要再用,随着编程工具的进步、语言本身的强大和开发标准的演进,<>尤达表示法的优势几乎消失了。因此,<>完全没有必要使用null==oj这种写法。

而Ja编程推荐的做法是:<>oj==null,这种写法显然null==oj更直观,更容易被开发者理解。

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/8526.html

分享给朋友:

相关文章

最让你震惊的网站有哪些?

压箱底的震惊来了,来波大的,一百个网站!这些都是我平时辛辛苦苦收集的,是真的牛逼,居然还有这种网站。1、实时地球网址:https://zoom.earth/实时图像每 10 分钟更新一次,提供风暴、天气预报、降水、火警等数据2、陕西博物馆...

想要在双 11 换一台全面无短板的新手机,有没有「闭眼买」的机型推荐?

想要在双 11 换一台全面无短板的新手机,有没有「闭眼买」的机型推荐?

最近一个月各大手机厂商的旗舰机扎堆发布,不知道大家看爽了没?这一代的性能续航大提升,最低 3599 元就能买到,同时老款也有不小的降幅,今年双 11 算是相当适合换手机的节点了!这次,小黑就给大家推荐双 11 期间值得购买的手机...150...

计算机专业不干互联网不热爱技术,还能转行干什么?

转行的思路,无非也就是那几个。我们顺着每个思路,一路捋一遍,基本上,大致可行的方向,也就有了。一、跟对口职业和岗位业务链条相邻的职业和岗位计算机专业如果找到了对口的技术岗位,跟技术工作联系最紧密的岗位是什么?产品经理。当然,大多数产品经理也...

闲鱼上为什么会有人问都不问直接下单?

我去年卖一个荣耀90,挂的2200,最终成交2137.5元。对方是一个高高壮壮的西北口音,要求的自取。大概我吃过午饭,约了旁边的商场,那里有荣耀售后。见了面,先看了手机,试了好一会儿,各种测试,没问题。然后去了商场二楼的荣耀售后,让人家售后...

提升自己最快的方式是什么?

提升自己最快的方式是什么?

1.稻盛和夫说过:“改变自己最快的方法就是做自己害怕的事,不敢做的事,认为自己做不到,觉得不可能的事。如果在自己的舒适区待久了,就会丧失斗志,如果想快速的改变,可以坚持去做一些对自己有益的事。2.早睡早起,坚持运动保持旺盛的精力,人生拼到最...

荣耀magic 7 首发的应该都收到货了,感觉怎么样?

8号入手magic7,跟mate40pro比。优点:1、电池真耐用,充电块,华为电池也是新换的但是明显荣耀耐用;2、系统明显快多了,mate40pro下半年开始卡的不行,实在受不了了。3、声音、震动效果提升明显,指纹反应灵敏很多。 缺点:1...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。