我有一個setter方法。一步檢查字符串的空值和空白
然後,當另一個(說生成)方法運行,我需要檢查我的領域的價值。 所以在String屬性的情況下,我需要知道它是否包含值或者是否沒有設置。所以它可能是空的,「」或其他有意義的東西,有三種可能性。 它是相當無聊首先檢查空值:
if (s != null)
然後空字符串
if (!s.isEmpty())
是有一個單步檢查嗎?你可以告訴我,我可以使用空字符串初始化我的字符串字段。 [它是共同的嗎?但是如果有人將一個空值傳遞給setter方法setS會怎麼樣? 所以我們總是需要檢查Object值是否爲null,然後才能使用該對象進行操作?
那麼,是一個setter方法可以檢查它的值,如果該字段爲空,getter方法也可以返回一個非空值。但它是唯一的解決方案嗎?對於程序員來說,在getters & setter中做的工作太多了!
是的Apache庫。 爲什麼又一次,它不是在java的發行版中? – EugeneP
需要考慮的事項:null表示未設置,「」表示設置爲空。 – Pat
同意帕特在這裏。有時看起來這只是不必要的保留,但它們在語義上是不同的。如果成員爲空,則表示「沒有值」,而空字符串「有值;空字符串」。基於這一事實,方法具有不同的行爲(通過設計)是很常見的。 – charstar