public int indexOf(X s)
{
for (int i = 0; i <= arr.length-1; i++)
{
if (arr[i].equals(s))
{
return i;
}
}
return -1;
}
@Test
public void testIndexOf()
{
BetterArray<String> b = new BetterArray<String>();
for (int i = 0; i < 20; i++)
b.add("str" + i);
assertEquals(0, b.indexOf("str0"));
assertEquals(19, b.indexOf("str19"));
assertEquals(-1, b.indexOf("not found"));
}
顶部的代码没有通过测试中的最终断言,但前两个似乎没问题,对我来说看起来如果它循环通过并且找不到字符串,它将返回 - 1,我错过了什么吗?