2011-11-23 40 views
1

如上所述here有沒有辦法在java中執行「andand」技術?

我們連接對象及其方法(或屬性)與邏輯 AND運算(& &)調用,因此該方法只調用如果對象是 truthy(非空)。這種技術通常被稱爲「andand」。

在Ruby中,我們能夠做到這一點:

name = @person && @person.name

這樣,我們就不必明確檢查@person爲null。

在java中是否有類似的技術?

+0

你想要做的和操作,或你在找一個簡單的方法來檢查,如果屬性爲null? – Pace

+0

我想檢查屬性是否爲空,並在單個代碼行中分配值。 – Ger

+0

http://laktek.com/2011/11/23/basic-patterns-for-everyday-programming/ – jpredham

回答

4

嘗試ternary operator然而它不是非常類似於&&技術,但只是以這種方式工作。

person != null ? peson.name : <default name> 
5

有沒有在Java類似的技術?

沒有什麼簡潔的。

有一個項目硬幣proposal添加所謂的「貓王」運算符和相關的Java 7。但是,它並沒有削減。

2

不,只有在檢查字符串時,可以通過反轉比較順序來實現此目的。

而不是

if (role != null && role.equals("admin")) 

你會寫

​​3210
相關問題