如何在Java中查找数组中元素的索引?

2022-08-31 13:08:16

我希望在Java中找到给定元素的索引,知道其内容。

我尝试了以下示例,这不起作用:

class masi { 
    public static void main( String[] args ) { 
        char[] list = {'m', 'e', 'y'};

        // should print 1
        System.out.println(list[] == "e");                    
    } 
}

任何人都可以解释一下这有什么问题以及我需要做些什么来修复它吗?


答案 1

在这种情况下,您可以从字符数组中创建新的字符串,然后对该字符串执行indeoxOf(“e”):

System.out.println(new String(list).indexOf("e")); 

但在基元数据类型的其他情况下,您必须对其进行迭代。


答案 2

或者,您可以使用Commons Lang ArrayUtils类:

int[] arr = new int{3, 5, 1, 4, 2};
int indexOfTwo = ArrayUtils.indexOf(arr, 2);

对于不同的数组类型,存在方法的重载变体。indexOf()