Java - 如何从数组中获取项目索引及其值?

Rif*_*fat 2 java arrays android arraylist

如果我有一个数组列表(例如字符串数组),那么如何获取元素的索引及其值?

代码示例:

    private static final String[] TEST = new String[]{
      "abc","bcd","def"
}
Run Code Online (Sandbox Code Playgroud)

要求其索引类似于:

       int i = TEST.getPosition("abc");/TEST.indexof(...);//not available
Run Code Online (Sandbox Code Playgroud)

我还尝试创建 ArrayAdapter。

有这样的事吗?或者也许我需要用那个适配器或其他东西来分配它?

或者,

我怎样才能得到一个元素的这样的索引?

Meo*_*der 5

最简单的想法

将数组转换为列表,您可以获取元素的位置。

List<String> abcd  = Arrays.asList(yourArray);
int i = abcd.indexOf("abcd");
Run Code Online (Sandbox Code Playgroud)

其他解决方案,您可以迭代数组:

int position = 0;
for (String obj : yourArray) {
    if (obj.equals("abcd") {
       return position;
    }
    position += 1;
} 

//OR
for (int i = 0; i < yourArray.length; i++) {
    if (obj.equals("abcd") {
       return i;
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 我宁愿使用普通的 for 循环,而不是像本示例中那样使用 foreach 循环,您不必担心任何外部变量,而且它更紧凑。 (2认同)