1. java 字元串為null 如何判斷
定義 String str;
判斷字元串是否空涉及兩個層次:
1、是首先判斷字元串變數的引用是否為空,即空對象的概念,用null來判斷,可以用if(str==null) 判斷 str是否為空;(注意不能用equals(null),在參數為null情況下,返回值永遠是false);
2、是在不為空對象的情況下,在判斷字元串對象是否為空串,即長度為0.用length()==0。 關鍵是搞清楚字元串對象為空和空字元串有區別。
拓展內容
Java空字元串與null的區別:
1、類型
null表示的是一個對象的值,而並不是一個字元串。例如聲明一個對象的引用,String a = null ;
""表示的是一個空字元串,也就是說它的長度為0。例如聲明一個字元串String str = "" ;
2、內存分配
String str = null ; 表示聲明一個字元串對象的引用,但指向為null,也就是說還沒有指向任何的內存空間;
String str = ""; 表示聲明一個字元串類型的引用,其值為""空字元串,這個str引用指向的是空字元串的內存空間;
在java中變數和引用變數是存在棧中(stack),而對象(new產生的)都是存放在堆中(heap)。
如下:
String str = new String("abc") ;
2. java中string型變數判斷是否為空哪個正確
首先就要確保他不是null,然後再判斷他的長度。
String str = xxx;
if(str != null && str.length() != 0) { }
這種做法是安全的,首先他會判斷str是否為空,如果為空那麼if就直接退出了,就不會再判斷後面的str.length() != 0了,這是JAVA的&&特性,也許其他語言也是這樣。
String字元串判定是否為空方法總結
判斷一個字元串str不為空的方法有:
1. str!=null;(前提條件)
2. 「」.equals(str);
3. str.length()!=0;
注意:length是屬性,一般集合類對象擁有的屬性,取得集合的大小。
例如:數組.length就是取得數組的長度。
length()是方法,一般字元串類對象有該方法,也是取得字元串長度。
例如:字元串.length();
說明:
1. null表示這個字元串不指向任何的東西,那麼沒有是否為空的問題,因為引用的實例對象都沒有。這時候如果你調用它的方法,那麼就會出現空指針異常。
2.」「表示它指向一個長度為0的字元串,這時候調用它的方法是安全的。
3. null不是對象,」「是對象,所以null沒有分配空間,」「分配了空間,例如:
String str1 = null; str引用為空
String str2 = 「」; str應用一個空串
str1還不是一個實例化的對象,兒str2已經實例化。
對象用equals比較,null用等號比較。
如果str1=null;下面的寫法錯誤:
if(str1.equals(「」)||str1==null){ }
正確的寫法是 if( ( str1==null ) || str1.equals(「」)){
//先判斷是不是對象,如果是,再判斷是不是空字元串;而且順序不能亂 }
3. Java空字元串與null的區別和判斷字元串是否為空的方法
Stringstr=null;
Stringstr2="";
null表示str對象是不存在的,還沒被實例化,如果調用它的一些方法會空指針
""表示str2的值是空的字元串,沒任何東西,對象存在,調用方法不會空指針
if(str2!=null&&!str2.isEmpty())//判斷對象不為空,並且不是空字元串
4. java 中如何判斷一個String變數是否為空
方法一:
先把int類型的數據轉換成String類型,然後判斷String類型的數據是否為空。
示例代碼:
int point;
String val=point +"";
if("".equals(val)){
// do something...
}
PS:int point不是對象,int類型為空時默認為0。
方法二:
如果point是int類型,則得到的結果是不可能是null的。
如果插入一條數據時沒有插入給欄位,而資料庫里默認是null的值的話,可以使用
Integer point= GiftInfo.getPoints();
然後判斷point是否等於空。
示例代碼:
Integer point= GiftInfo.getPoints();
if(point == null){
// do something...
}
PS:GiftInfo.getPoints返回的是Integer類型,Integer類型是包括基本類型的包裝類,不給賦值的時候為null。
5. java怎麼判斷字元串是不是空的或null
static boolean isNull(String s){
return null==s || "".equals(s);
}
~~~~~~~~~~~~~~~~~~~~
6. java判斷字元串是否為空
字元串為空有兩種情況:1、""2、null
Stringstring="";
//方法一為""返回true負責返回false此處返回true
System.out.println(string.isEmpty());
//方法二為""返回true負責返回false此處返回true
System.out.println(string.equals(""));
//方法三為null返回true負責返回false此處返回false
System.out.println(string==null);
7. Java空字元串與null的區別和判斷字元串是否為空的方法
空字元串:例如 String a=""; 與a=null;
還是有一定的區別的,第一個你是已經初始化了,a開了塊空間存儲了「」;而a=null,未初始化,如果你直接列印輸出,二者是有區別的,第一個是空字元串,第二個視情況可能輸出null或者直接崩潰,報空指針異常
如何判斷字元串是否為空,你可以直接用個String 類型去接收,例如String a="XXXX";
然後你判斷a的length是否大於0就好了。大於0非空
8. java中變數a是double型的。怎麼判斷a是否為null
Double a = Double.NaN;
//第一種 前兩種要求類型是Double即包裝類
System.out.println(a.equals(Double.NaN));
//第二種
System.out.println(a.equals(0.0d / 0.0));
//第三種 使用Double的靜態方法,方法實現就是第四種 類型無要求
System.out.println(Double.isNaN(a));
//第四種 利用NaN自己和自己不相等的特性,
//要求類型必須是double,不能是包裝類,否則結果是false
//因為包裝類是引用類型,比較的!=是地址的比較而不是值的比較。
double b = Double.NaN;
System.out.println(b != b);
(8)java判斷字元串為空或null擴展閱讀:
實際開發中常常遇到這種需求:double類型的數據如果為空,就展示空字元串;如果為0,就展示0。
一般是這樣做,新建一個model,和資料庫里的欄位,數據類型一一對應。然後把資料庫里的數據取到這個model的集合里,然後進行進一步處理。
這時候就有個問題,比如double類型會默認初始化為0,這樣就無法區分資料庫里是0值還是null。
解決方法一
再從資料庫中獲取你所需要的數據的條數。這樣如果值為0且數據條數小於等於0,這種情況就是空值;否則就是0.
解決方法二
可空類型。double,有0值就是0,沒有值就是null。