當**中有if()語句,這時判斷乙個字串是否為null或者長度是否為零。
一般情況有下面的寫法:
// 情況1
if(str.
length()
==0|| str == null)
// 情況2
if(str == null || str.
length()
==0)
從邏輯上講,不執行程式的時候,簡單看這兩種情況的結果是一致的沒問題。
但是執行程式後第一種情況就會報錯。
原因:null是乙個特殊的值,null值沒有長度,也不能呼叫length()方法判斷長度。
在呼叫length()方法的時候就會報錯。
所以在需要對乙個字串或者變數需要進行null值判斷的時候,需要把null值判斷的**放到前面。
一般情況,用乙個字串去和常量的字串進行比較,寫法有以下兩種。
// 情況1
if(str.
equals
("1"))
// 情況2if(
"1".
equals
("str"))
其實和上面相同,如果字串str為null,第一種情況會報錯。
所以在需要考慮到null值判斷情況,把null值放在前面會避免一些錯誤。
歡迎指正!
寫在前面的話
csdn開博前言 這是第一次在csdn寫博,所以將寫作的背景及原因交待一下,恐以後自己寫博的時候離題萬里,當看到這篇文章的時候明白要在這個地方留下些什麼東西。也或許有幸能被別人看到我寫的文字,也能明白我的意圖。寫這些文字的時候,我做為一名開發人員在一家軟體公司實習。能有機會從事和程式設計相關的工作心...
寫在前面的話
屈指算算,從接觸計算機到現在,已經過去了12個年頭,其中做全職程式設計師也有3個年頭了。這些年來我頻繁查閱網際網路上的資源,也免費使用許多優秀的開源 感謝網際網路提供的知識海洋,它讓我們獲取知識的方式變得如此便捷。我曾經註冊過許許多多的網路賬號,如今它們大多我已忘記。現在我想把我的一點想法記錄下來,...
寫在前面的話
再三猶豫,我終於決定了踏上這一次征程,放下顧慮,為我的oi夢奮鬥。作為乙個高中才接觸到oi的弱菜,我要面對的艱險真的很大。首先,對手大多都是從小學或初中就開始接觸oi,經過幾年時間的積累,已經具有很強的實力,我從去年寒假正式接觸演算法到現在也不過1年多點,而今年省選只留給了我2個多月的時間來追趕,我...