導航:首頁 > 編程語言 > stringindexofjava

stringindexofjava

發布時間:2023-02-26 12:13:25

A. java種String類的indexof方法

s.indexOf("a", 1) 這行的意思是 從字元串s里尋找字母a的位置,但尋找的時候要從s的索引為1的位置開始,這就是第二個參數1的作用,由於索引是從0開始的,這樣實際尋找的時候是從字母b開始的,這樣肯定就找不到a了,所以輸出了-1,-1的意思就是沒有找到。說的有點啰嗦

B. Java中循環和String類indexOf(,)方法的關系

第一個問題,循環為什麼可以跳出?

當循環條件不滿足的時候,也就是(i = numOne.indexOf(numTwo, i)) 的值<0 的時候就能退出跳出


numOne.indexOf(numTwo, i)表示在字元串1里查找字元串2的位置,

如果找不到 或者 索引超過了字元串長度,

函數 就會返回-1,如果是-1.那麼-1>=0 肯定是假,所以循環就會退出


比如12345678 那麼循環會在第一次找到1,後面找不到就返回-1;循環就退出了

比如 ab 索引從0開始. b的索引是1, 如果這個時候"ab".index("b",2); 指定的索引下標2,超過了最大的索引限度, 也返回-1;


indexOf(intch,intfromIndex)
返回在此字元串中第一次出現指定字元處的索引,從指定的索引開始搜索。
為什麼不是+1遞增?

其實本來i要加1遞增的,因為循環條件里,又改變了i的值

第一次循環 numOne.indexOf(numTwo, i) 的結果是0,修改了i的值為0;

條件滿足 (i = 0)>=0; 循環結束後i增加1, 那麼i = 1;

第二次循環 numOne.indexOf(numTwo, i)的結果是6,修改了i的值為6;

條件滿足 (i = 6)>=0; 循環結束後i增加1, 那麼i = 7;


第三次循環 numOne.indexOf(numTwo, i)的結果是6,修改了i的值為10;

條件滿足 (i = 10)>=0; 循環結束後i增加1, 那麼i = 11;


...............同理中間的其他次循環..............


最後的循環 (上次循環後,i=14) i超過了字元串的最大索引13, numOne.indexOf(numTwo, i)就返回-1,修改了i的值為-1;

條件不滿足 (i = -1)>=0; 退出循環,.結束

閱讀全文

與stringindexofjava相關的資料

熱點內容
方舟手游如何修改伺服器後台 瀏覽:815
程序員考試教程 瀏覽:219
文件名修改為文件夾的名字批處理 瀏覽:251
拍照程序員 瀏覽:827
wps怎麼把pdf轉jpg 瀏覽:217
自拍用什麼app做的藝術照 瀏覽:169
h3c無線配置命令 瀏覽:515
linux代碼閱讀工具 瀏覽:160
能夠畫出對稱圖形的是什麼app 瀏覽:424
單片機投票器 瀏覽:467
程序員那麼可愛唱嗎 瀏覽:830
手機誤刪的app怎麼恢復 瀏覽:700
java第三方加密庫 瀏覽:660
編譯代碼軟體哪個好 瀏覽:997
編譯器軟體圖片 瀏覽:880
美團專送app怎麼不接受遠單 瀏覽:833
伺服器mgmt口如何連接電腦 瀏覽:798
做程序員至少要精通幾種 瀏覽:673
個人用雲伺服器價格對比 瀏覽:257
如何遠程刪除伺服器文件夾 瀏覽:779