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()

功能:从末尾处开始查找,从后向前查找,返回匹配到的第一个字符的索引。

经验分享 程序员 微信小程序 职场和发展