如果我在我的数组列表中添加了两个项目,并且这两个项目具有相同的名称,当我想打印它们时,它们将具有与我调用方法 indexOf() 时相同的索引,它将返回第一次出现的索引 theElement ,获取项目索引的最佳方法是什么,我尝试声明一个局部变量并将计数器的值分配给它,并在我刚刚添加的打印语句中 - 它确实有效,但我认为它应该做一个更好的方法
public class Example
{
public void checkIndex(int index)
{
if (index < 0 || index >= size) // smaller
throw new IndexOutOfBoundsException
("index = " + index + " size = " + size);
}
public Object get(int index)
{
checkIndex(index);
return element[index];
}
public int indexOf(Object theElement)
{
// search element[] for theElement
for (int i = 0; i < size; i++)
if (element[i].equals(theElement))
return i;
// theElement not found
return -1;
}
}
public class Array extends Example
{
protected void printList()
{
int counter = 0;
if(super.size() == 0)
{
System.out.println("List is Empty.");
}
else
{
System.out.println("\nShowing List: ");
while(counter < super.size())
{
String s = (counter+1) + "\t" + super.get(counter).toString();
System.out.println(s + " the index is: " + super.indexOf(super.get(counter)));
}
}
System.out.println(); // this is to sprate the the options from the result.
}
}