Java chartAt(i)函数和indexOf()函数
1.charAt(i) 函数
功能:获取字符串中 i 位置的字符。【通过索引位置找字符。】
索引范围是从0到length() - 1。
是一个具有查询功能的函数。
str.charAt(i)的意思是第i+1个字符在字符串str中所占的位置,输出的是字符:
String str = "abc"; //从该字符串中取字符 char ch = str.charAt(0); //第一个字符(索引为0的字符) char ch2 = str.charAt(1);// 第二个字符(索引为1的字符) //ch是a,ch2是b;
String str = "abc"; //从字符串中取字符 char ch = str.charAt(0); //第一个字符(索引为0的字符) char ch2 = str.charAt(1);// 第二个字符(索引为1的字符) //ch是a,ch2是b;
2.num.charAt(i) - 48 :功能是转化字符‘1’到数字1。
s=“102” 那么chatAt(0)=‘1’,这个‘1’是字符,不是数字。 字符’0’的是48 数字0的值是0 所以’0’和0差48 所以num.charAt(i) - 48是为了转换字符到数字。
引申一下 c/c++:把字符串里面的数字转化为整数,string[i] - 0;1-0就是得到1。
3. indexOf()函数
3.1 功能:从数组位置(startIndex)开始向 后 查找。【通过内容找索引位置。】
语法:arrayObject.indexOf(searchvalue, startIndex)
searchvalue:要查找的内容(必须)
startIndex:开始查找的位置(非必须,默认从头开始)
*报告指定字符在此实例中的第一个匹配项的索引。 var nums = [1,7,6,5,7,9,8]; var pos = nums.indexOf(7);//只算第一个7的索引号 pos = 1 *当查找对象不存在时,返回-1。 var nums = [1,7,6,5,7,9,8]; var pos = nums.indexOf(99);//查找数组中的99 pos = -1 *从索引位置开始查找: var nums = [1,7,6,5,7,9,8]; var pos = nums.indexOf(7,4);//从索引为4的位置向后查找为7的值的位置 pos = 4
3.2 lastIndexOf()
功能:从末尾处开始查找,从后向前查找,返回匹配到的第一个字符的索引。
下一篇:
判断二叉搜索树的后序遍历序列问题