Java 中的 xx ≠ null 是什么新語(yǔ)法
最近,棧長(zhǎng)用 IntelliJ IDEA 看源碼時(shí)發(fā)現(xiàn):
咦~這是什么鬼?
Java 不等于的寫(xiě)法不是一直都是 != 么?什么時(shí)候可以寫(xiě) ≠ 了??
不科學(xué)啊~
以為我是老花眼了,認(rèn)真看了幾遍,覺(jué)得應(yīng)該是 IDEA 的特效吧,然后去點(diǎn)那個(gè)符號(hào),發(fā)現(xiàn)也還原不了原樣。。。
然后互聯(lián)網(wǎng)網(wǎng)沖浪了一翻,終于被我找到了這個(gè)開(kāi)關(guān):
Preferences > Editor > Reader Mode > Font ligatures
Reader Mode: 用于只讀模式的編輯器設(shè)置。
Font ligatures: ligatures 是 '繩索“、”繃帶' 的意思,F(xiàn)ont ligatures 不就是可以理解為 '字體繃帶' 么,所以 != 被顯示成 ≠ 就不奇怪了。
取消這個(gè)開(kāi)關(guān)后,再來(lái)看下上面的源碼:
終于恢復(fù)正常了,這樣看得才舒服。。
Ligatures擴(kuò)展話說(shuō)在源碼中可以把 != 被顯示成 ≠,那在正常的代碼編輯器應(yīng)該也能顯示吧?
沒(méi)錯(cuò)!!
棧長(zhǎng)在設(shè)置菜單中根據(jù) 'ligatures' 搜索,發(fā)現(xiàn)有好幾處設(shè)置 Font ligatures 的地方:
然后打開(kāi)這個(gè)選項(xiàng):
Preferences > Editor > Font > Enable font ligatures
棧長(zhǎng)隨便寫(xiě)了些代碼測(cè)試了下:
正常的代碼編輯器也能顯示!
從上面的測(cè)試代碼可以看出,我加了個(gè) >=,所以不僅限于不等于,更多的符號(hào)可以通過(guò)切換這個(gè)開(kāi)關(guān)來(lái)看下。
關(guān)閉開(kāi)關(guān),原生顯示:
打開(kāi)開(kāi)關(guān),代替顯示:
我現(xiàn)在再把測(cè)試代碼復(fù)制出來(lái):
public class Test { public static void main(String[] args) {int n = 1;if (n != 0) { System.out.println(1);}if (n >= 1) { System.out.println(2);} }}
可以看到,顯示歸顯示,代碼復(fù)制出來(lái)還是正常的語(yǔ)法的。
總結(jié)好了,今天棧長(zhǎng)給大家分享了 IDEA 的這個(gè) Font Ligatures 開(kāi)關(guān),也不知道 IDEA 是在哪個(gè)版本中搞了這個(gè)默認(rèn)開(kāi)關(guān),真是讓人蛋疼。。
這個(gè)感覺(jué)就和 IDEA 中的智能顯示如出一轍:
如上所示,因?yàn)?Java 7 以上泛型類(lèi)型能夠自動(dòng)推斷,如果集合接口帶了泛型,集合實(shí)現(xiàn)又帶了泛型,那么集合實(shí)現(xiàn)的泛型會(huì)被折疊成 ~ 顯示,鼠標(biāo)放上去或者點(diǎn)擊它就會(huì)顯示原生代碼,并且還能提示你集合實(shí)現(xiàn)中的泛型是多余的。
但是很無(wú)語(yǔ),像不等于符號(hào)這種卻不能點(diǎn)擊/懸浮顯示原生符號(hào),需要一個(gè)硬開(kāi)關(guān)。
總之,我覺(jué)得這個(gè)東西的存在根本就沒(méi)鳥(niǎo)用,也不是很建議大家使用,最終我就默默地把所有的 Font Ligatures 開(kāi)關(guān)都關(guān)閉了,不然會(huì)混淆視聽(tīng)。
當(dāng)然,蘿卜白菜各有所愛(ài),有喜歡這種顯示方式的那就是真香定律了。
IDEA 香是香,可能你會(huì)說(shuō)用它要收費(fèi),其實(shí)它也有開(kāi)源的社區(qū)版本,收費(fèi)的專(zhuān)業(yè)版也很容易申請(qǐng)到激活碼,關(guān)注公眾號(hào)Java技術(shù)棧,回復(fù):IDEA,可以閱讀我分享過(guò)的獲取正版 IDEA 激活碼的教程,很多粉絲都反饋說(shuō)輕松得到了,感興趣的都可以去申請(qǐng),不能太容易了。
最后,如果本文對(duì)你有幫助,點(diǎn)個(gè)在看鼓勵(lì)一下哦!也歡迎分享轉(zhuǎn)發(fā)給更多有需要的朋友~
你還遇到過(guò)哪些 IDEA 奇奇怪怪的問(wèn)題?歡迎分享~
版權(quán)申明:本文系公眾號(hào) 'Java技術(shù)棧' 原創(chuàng),原創(chuàng)實(shí)屬不易,轉(zhuǎn)載、引用本文內(nèi)容請(qǐng)注明出處,禁止抄襲、洗稿,請(qǐng)自重,尊重大家的勞動(dòng)成果和知識(shí)產(chǎn)權(quán),抄襲必究。
以上就是Java 中的 xx ≠ null 是什么新語(yǔ)法?的詳細(xì)內(nèi)容,更多關(guān)于Java xx ≠ null 的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. 淺談SpringMVC jsp前臺(tái)獲取參數(shù)的方式 EL表達(dá)式2. 關(guān)于Ajax跨域問(wèn)題及解決方案詳析3. jsp+servlet簡(jiǎn)單實(shí)現(xiàn)上傳文件功能(保存目錄改進(jìn))4. 刪除docker里建立容器的操作方法5. JavaScript實(shí)現(xiàn)組件化和模塊化方法詳解6. .Net Core和RabbitMQ限制循環(huán)消費(fèi)的方法7. ASP.NET MVC遍歷驗(yàn)證ModelState的錯(cuò)誤信息8. SpringMVC+Jquery實(shí)現(xiàn)Ajax功能9. jsp網(wǎng)頁(yè)實(shí)現(xiàn)貪吃蛇小游戲10. ASP中if語(yǔ)句、select 、while循環(huán)的使用方法
