当前位置:首页 > 每日看点

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

卡卷网2年前 (2025-01-11)每日看点272

<>尤达表示法: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/8686.html

分享给朋友:

相关文章

天涯论坛关闭后,除了知乎,大家都在逛什么?

天涯论坛关闭后,除了知乎,大家都在逛什么?

天涯神贴合集完整版,给大家整理好了! 那年大学,打开天涯,感觉打开了一片新天地,里面什么样的人都有,有大神也有蛇神,比某乎好太多了,可惜后面关了很多年前,天涯社区曾出现了不少深受欢迎的帖子,成功地预言了许多形势和事件。这些帖子因此被冠以“天…

为什么扫码支付在中国流行,在发达国家被排斥?

因为这是一种落后的技术。 卖菜的大爷花5毛钱就可以打印出一张二维码来接受付款。 你觉着这种先进么?跟先进完全不沾边的。正是因为不先进,所以才能流行。 卖菜大爷用不起一台先进的、具有NFC感应功能的、还能刷各种银行卡的收款机。 这就是现实。…

你每天用来涨知识的手机应用程序有哪些?

你每天用来涨知识的手机应用程序有哪些?

经过深度使用和测评, 从100个APP中选出的这35个超实用的app,每一个都是最硬核最有料的涨知识神器!每天打开看看,能让你提神醒脑,眼界大开,成为朋友聚会上的话题王者! 先放上全部APP目录,有新闻资讯类、英语学习类、读书类、影视类…

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

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

有哪些是你用上了mac才知道的事?

用上了高端的Mac(已退货)才知道:原来文件夹里面的文件,你看到是8个,其实可能有12个。其中3个图标重叠在一起了,另外一个被拖动到屏幕外面了。 用上了高端的Mac(已退货)才知道:原来鼠标灵敏度有问题是因为系统内置了鼠标加速度,只能用控制…

抖音上有一些账号搬运别人的视频,几乎一模一样,也没判搬运,他们是怎么做到的??

对于任何短视频平台来说,如何用最低的成本快速实现伪原创搬运都是需要解决的问题。 所有的短视频平台,包括抖音、快手、tiktok、视频号、小红书、B站,甚至是FB、推特、INS、YouTube,它们的查重技术都是类似的,只要你在网络环境设置得…

发表评论

访客

看不清,换一张

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