我如何访问 List 的数组元素

Mus*_*h87 1 java arrays list arraylist indexof

我有个问题:

我有一个用不同值填充的 List Java。例如,我有:

List<String[]> l = new ArrayList();
String[] lis = new String[3];
lis[0] = "A";
lis[1] = "B";
lis[2] = "C";
l.add(lis);
Run Code Online (Sandbox Code Playgroud)

我也有其他价值观。现在,我只想在此列表中搜索第一个字段。例如,我想要 A 的 indexOf。我曾尝试编写此代码:

int index = l.indexOf("A");
Run Code Online (Sandbox Code Playgroud)

但我得到 -1 作为回报。我想知道在加载数组时如何访问列表的字段。

Sur*_*tta 5

我想要 A 的 indexOf。

不,你不能得到它,因为它是数组中的一个元素。数组没有 indexOf 方法。列表有那个方法。

我想知道在加载数组时如何访问列表的字段。

String firstElem= l.get(0)[0]; 
Run Code Online (Sandbox Code Playgroud)

get(0) 为您提供第一个插入的数组,而 [0] 为您提供该数组中的第一个 positiend 元素。

如果您正在寻找A数组中的位置,请从列表中访问数组l.get(0)并迭代您获得的数组以获取 的位置A

评论后更新:如果您不知道您拥有的索引

for (int i = 0; i < l.size(); i++) {
        for (int j = 0; j < l.get(i).length; j++) {
            if( l.get(i)[j].equalsIgnoreCase("A")){
                return j;
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

注意:将其视为示例代码并添加对空值、重复项等的检查...