"".indexOf()的作用,以及結果標識 1、0、-1

bestcxx發表於2016-01-26

"".indexOf()的作用,以及結果標識 1(不限於1,而是發現的字元的起始位,從0開始)、0、-1


在實際程式設計的過程中,總是無法避免和String型別的反參打交道,但是這個String型別的資料並不是中止,而是需要做進一步的轉化比如轉化為xml物件或者json型別的物件。


但是返回的String型別的字串有時並不是我們預想的字串,或許是網路故障,或者是我們的請求沒有獲取正確的響應而返回了一個表示錯誤資訊的String型別的串。


在這種情況下,我們就需要先對結果做出判斷。


先提出幾個例項:


·String str1=“{I am ok:1234}”.indexOf("123");

str1=9;


·String str1=“1234}”.indexOf("123");

str1=0;


·String str2=“{I am ok:1234}”.indexOf("");

str1=0;


·String str3=“{I am ok:1234}”.indexOf("12345");

str1=-1;


上面的3個結果說明,對字串使用indexOf()方法可以有3種使用效果

第一種是被比較的字串具有比較的字串,所得結果返回為 1或者0,這是返回的存在這個字串的起始位置第0位開始,或者第1位開始出現這個字串

第二種是和空字串比較,返回的是0,如果使用空字串和空字串做比較,返回的還是0

第三種是和一個不存在的字串做比較,返回的是-1


如果說,我們已經可以預知兩種結果中的特殊標誌位,就是返回的string中要麼有 "right",要麼就是"false",這樣的欄位,那可顯然,可以直接讓string的串和right來一個indexOf("right"),如果返回為0或者大於0的整數,說明返回的是正確的結果,否則,也就是等於  -1 時,就是錯誤的string串了,當然,使用表示"false"欄位的比較也是可以的。

相關文章