当前位置: 首页 > 面试题库 >

转换ArrayList 反对[][]

郑博厚
2023-03-14
问题内容

在Java中,如何将数组的ArrayList转换为二维数组?

例:

ArrayList<String[]> results = new ArrayList<String[]>();
String [] columns = {a few strings};


JTable table = new JTable(results.toArray(), columns);

我收到未定义JTable(Object [],Object [])的错误。


问题答案:

List<T>.toArray(T[])方法应能胜任。

例如:

List<String[]> list = ...
String[][] res = new String[list.size()][];
list.toArray(res);

要么

List<String[]> list = ...
Object[][] res = new Object[list.size()][];
list.toArray(res);

如果使用此重载而不是List<T>.toArray()重载,则可以选择数组的实际类型。它需要花费额外的一行代码,但是如果数组类型很重要,这就是这样做的方法。

List<T>.toArray()重载为您提供了一个实际类型为Object[]… 的数组, 而不管
列表的泛型类型或列表元素的实际类型如何。)



 类似资料:
  • 问题内容: 我有一个ArrayList,可在ArrayAdapter中用于ListView。我需要将列表中的项目转换为JSONArray才能发送到API。我四处搜寻,但没有找到任何说明其工作方式的信息,我们将不胜感激。 更新-解决方案 这就是我最终要解决的问题。 ArrayList中的对象: 这是我的转换方式: 并输出: 希望有一天能对某人有所帮助! 问题答案: 如果我正确阅读了JSONArray

  • 问题内容: 将数组元素复制到其中的最佳方法是什么? 我需要快速执行此操作,所以最快的方法是什么? 问题答案: 利用创建 “(通过写‘到数组中。更改到返回的列表)’由指定数组支持的固定大小的列表。” 或者,解耦两个数据结构: 或更简洁:

  • 问题内容: 我是Java的初学者。我真的需要从数组或返回()。有可能的?我无法将数组插入(构造函数)。 代码如下: 问题答案: 添加以下代码以将arraylist值添加至应该可以工作:

  • 问题内容: 考虑到,我们怎么可以转换到(或)的 最佳和最快的 方式可能的,这样我们就可以用的就可以了,如操作,等等。 问题答案: 最好使用像Guava这样的库: 另一个番石榴的例子: 或Apache Commons Collections:

  • 问题内容: 我该怎么做? 我有一个arraylist,带有float元素。 它不起作用。 无法从Object []转换为float [] 问题答案: 自己循环播放。 强制执行nullcheck可以避免,因为(一个对象)可以是,而(原语)根本不能。 如果您已经在使用Java 8,并且以而不是结尾就没问题了,请考虑(没有这样的方法)。

  • 问题内容: 我有一个包含> 100k对象的TreeSet。我有另一种方法需要ArrayList作为参数。 我有什么方法可以完成此任务而无需迭代整个TreeSet,然后将每个对象手动添加到ArrayList? 问题答案: 这个怎么样: 对于Java 7及更高版本,这可以简化,因为类型参数可以替换为菱形类型: