我一定是错过了一些非常明显的东西,但我已经搜索了所有,不能找到这个方法。


当前回答

没有。或者使用java.util。List*,或者你可以自己写indexOf():

public static <T> int indexOf(T needle, T[] haystack)
{
    for (int i=0; i<haystack.length; i++)
    {
        if (haystack[i] != null && haystack[i].equals(needle)
            || needle == null && haystack[i] == null) return i;
    }

    return -1;
}

*你可以使用数组#asList()创建一个数组

其他回答

对于原语数组,如果你想避免装箱,Guava为原语数组提供了帮助,例如int。indexOf(int[]数组,int目标)

数组没有indexOf()方法。

也许这个Apache Commons Lang ArrayUtils方法就是您要找的

import org.apache.commons.lang3.ArrayUtils;

String[] colours = { "Red", "Orange", "Yellow", "Green" };

int indexOfYellow = ArrayUtils.indexOf(colours, "Yellow");

Java数组列表有一个indexOf方法。Java数组没有这样的方法。

您可能会想到java.util。数组列表,而不是数组。

数组本身没有这个方法。然而,A List做到了: indexOf