Java 数组和 ArrayList
当我尝试使用 Arrays.asList(myArray) 从数组创建 ArrayList myArrayList 时,我没有获取元素的列表myArray
。相反,我得到了Array
列表。
myArrayList
的大小为 1 。当我尝试执行 myArrayList.toArray()
时,我得到一个二维数组。如何获取列表中 myArray
的元素?迭代是唯一的选择吗?
When I try to create an ArrayList myArrayList
from an array, using Arrays.asList(myArray)
, I am not getting the List
of elements in myArray
. Instead I get list of Array
.
The size of myArrayList
is 1 . When I try to do myArrayList.toArray()
, I am getting a two dimensional array. What to do to get the elements of myArray
in a list? Is iterating the only option??
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
首先,asList 方法是正确的方法:
问题可能是您调用 varargs asList 方法的方式使得 java 将您的参数解释为第一个 varargs 值(而不是值数组)。
要解决此问题,请尝试将参数转换为
Object[]
以强制调用可变参数,例如:Firstly, the asList method is the right method:
The problem may be that you are calling the varargs asList method in such a way that java is interpreting your parameter as the first varargs value (and not as an array of values).
To fix this problem, try casting your parameter as
Object[]
to force the varargs invocation, eg:myArray
的类型是什么?您不能将Arrays.asList
与基本类型的数组(例如int[]
)一起使用。在这种情况下你需要使用循环。What is the type of
myArray
? You cannot useArrays.asList
with an array of primitive type (such asint[]
). You need to use loop in that case.有多种方法可以实现它。 3 在 java 中将数组转换为数组列表以及将数组列表转换为数组的示例 可能会有所帮助。
There are different ways by which you can achieve it.3 example of converting array to arraylist and arraylist to array in java might help.
这行得通吗?
Would this work?
尝试在方法调用中提供泛型类型。下面给出了 2 个 String 元素的列表。
Try providing the generic type in the method call. The following gives me a list of 2 String elements.