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

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

卡卷网1年前 (2025-01-10)每日看点241

<>尤达表示法: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

分享给朋友:

相关文章

电视上哪个软件可以免费看电视直播?

电视上哪个软件可以免费看电视直播?

今天给大家推荐8款免费电视端直播看剧软件,感兴趣的朋友可以下载试一试!1、超级ITV 6.04免费看电视直播,央视卫视高清秒播,还有电影电视剧少儿体育等。2、小鲸电视 1.3.1小鲸电视是一款智能电视应用,集成了多个内容来源,包括腾讯视频、...

为什么微服务一定要有网关?

为什么微服务一定要有网关?

网关一句话总结,网关的作用是上浮公共逻辑,下沉差异逻辑。公共逻辑就是所有接口都需要做的事,比如权限校验,限流算法等,这样业务就只需要关心业务逻辑即可。下面是一个对比图: 当然除了一些公共逻辑外,路由也是网关的核心功能,它可以进行流量转发。...

如何在自己家里建立一套私有云系统?需要哪些设备?

如何在自己家里建立一套私有云系统?需要哪些设备?

我敢保证,这绝对是目前为止最简单的搭建家用私有云的方法:“一台主机+至少一块硬盘”足矣!不需要任何专业知识,也没有复杂繁琐的步骤,十分钟不到就能搭建好,帮你成功打开文件云储存新世界的大门!还在单纯依靠网盘进行文件存储的朋友,不是我吐槽哈,它...

马云也搞不明白:为什么现在用户偏爱微信支付,而不是支付宝?

这题我会,我教马云一招。你直接把你那破比支付宝的代码全删了,重新写一个。打开支付宝直接就是一个大大的支付码,然后右上角按一下就是扫一扫。你要是还想保留你的其他那些乱七八糟的功能,麻烦将他们全部做到下拉菜单里。你这么设计我不说你能干死微信,但...

如何做电商行业?

如何做电商行业?

“如何做电商*开网店”跟“如何找老婆”一样,没概况条件、没明确标准,就是扯犊子。我把话题具体一点说:具备“两三万”启动资金、掌握“选品+上架优化”基础技能,小则月入三五千、多则上万。跟摆地摊一样,有进货的钱、也不怕苦不怕累、稍微有点生意头脑...

PHP承载百万/天 访问量需要用到什么技术?

当年做一个百万PV的商城,也不过是两台2c4g的阿里云虚机罢了(其实一台就够,另外一台主要的逼着大家一定开发的时候一定要有负载均衡和横向扩容的意识)。当时框架还是Thinkphp3.2,框架提高运行效率的开关全打开,标准的lnmp模式,单机...

发表评论

访客

看不清,换一张

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