查找数组的索引

时间:2012-12-23 04:30:37

标签: java

有人可以向我解释为什么结果是6?感谢

String[] s = { "A", "B", "C", "D" };
String b = "ABRACADABRA";
int i = s.length - 1;
System.out.print( b.indexOf( s[ i ] ) );

我知道s长度是4,所以i = 3,但那么s [i]是什么意思?

3 个答案:

答案 0 :(得分:5)

在Java字符串和数组中0-indexed。这意味着第一个元素的索引为0,第二个元素的索引为1,等等......

因此s[3]表示s第四个元素,即D。表达式b.indexOf("D")为6,因为DABRACADABRA中的第七个字母,因此它位于索引6处。

答案 1 :(得分:2)

i表示索引 所以在s中,你有

i|s

0|A
1|B
2|C
3|D

所以在括号中,你只是给它你想要的值的索引。 所以s [3]给你D. 然后你要找到你给它的值的索引,你给它的值为'D',所以它找到'D'在ABRACADABRA中的位置。所以请记住,数组从0开始计数,所以

0|A
1|B
2|R
3|A
4|C
5|A
6|D
....

D所在的指数是6.

答案 2 :(得分:2)

我是数组索引。在数组中,索引始终以0开头。这意味着如果要在第一个位置获取数据,则需要执行s [0],这将给出'A'。

它始终 - 从您想要获得的实际位置开始。