导航:首页 > 编程语言 > 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相关的资料

热点内容
安卓快手下载怎么没有下载到本地 浏览:228
怎么在安卓手机登绘旅人 浏览:404
桌面文件全部加密 浏览:401
6s怎么外接u盘需要什么app 浏览:131
linux查看文件权限命令 浏览:685
安卓手游存档怎么用 浏览:761
linuxyum安装ftp 浏览:690
村委会主任可以推行政命令吗 浏览:102
电脑文件夹封面多张图片 浏览:263
网吧总服务器叫什么 浏览:922
多个算法解决同一个问题 浏览:455
小车解压后我的购车发票呢 浏览:977
做app开发用什么云服务器 浏览:177
linux网卡子接口 浏览:985
21岁职高毕业学程序员怎么学 浏览:321
vs如何对单个文件编译 浏览:6
为什么有的电脑不能安装python 浏览:75
金蝶迷你版加密狗检测到过期 浏览:186
硬件描述语言编译结果 浏览:655
程序员逆天改命 浏览:19