如何从列表中返回数组 [Java]

3

这是我的代码架构:

public String[] function(List<String[]> playerList){
i = 5
return playerList[i];

当我尝试运行这段代码时,会出现错误:
Array type expected; found: 'java.util.List<java.lang.String[]>'

我知道我在混合使用数组和列表时出了问题,如果我不能将我的列表输入更改为数组,那么修复此代码的正确方法是什么?

4个回答

5

要在List中访问索引处的元素,需要调用List.get(int index)方法(而不是使用[],这只适用于访问数组中的元素)。例如:

return playerList.get(i);

0

不像C++,可以进行运算符重载。

在Java中,playerList是一个列表,你不能对它应用"[]",但列表的元素/项是一个Array类型(String[])。所以,你应该使用list.get()和它的元素,你可以使用[]运算符:(playerList.get(i))[0]


0

playerList 是一个列表类型,要访问列表中的元素,您必须调用 get 函数。
例如 >> playerList.get(0),然后您将获得索引为 0 的元素值。在这种情况下,您将返回数组的字符串。如果您想要访问该数组元素,可以使用 playerList.get(0)[i]


0

所以,你想要获取一个字符串数组,但是有两个(2)事情你需要注意。首先,你可能想将playerList指定为ArrayList<String>,然后(第二),你试图返回playerList[i]作为字符串而不是作为指定的字符串数组String[]

public String[] function(List<String[]> playerList){
  i = 5
  return playerList[i];

你或许想尝试这个?

return playerList.toArray(new String[playerList.size()]);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接