java - 如何从数组的 ArrayList 转换为数组的数组

标签 java android arrays arraylist

//编辑:我更改了 ArrayList 转换,但我无法加载第二个微调器

我做错了什么。我想根据在第一个微调器中选择的行用 w 数组填充第二个微调器,但在尝试从数组列表转换时收到此警告。

***我在代码中标记了这个 空指针异常 11-06 19:03:34.050: WARN/System.err(5342): 在 RetrievingAmazonXMLDataActivity.onCreate(RetrievingAmazonXMLDataActivity.java:88)

//编辑后的代码

for (int i = 0; i < tokens.length; i++) {
            String a = dumpTitles("ProductName", i);
            element = a.split("!");
            allProducts.add(element);
        }

       w =  (String[][])allProducts.toArray(new String[allProducts.size()][]);


Spinner spinnerProducts = (Spinner) findViewById(R.id.spinner2);
        spinnerProducts.setOnItemSelectedListener(this);

//** 下面是错误行

 ArrayAdapter<String> productsArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, productArrayToShow);

       productsArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spinnerProducts.setAdapter(productsArrayAdapter);

 public void onItemSelected(AdapterView<?> parent, View v, int position, long id)
    {

        try {
            selected = parent.getItemAtPosition(position).toString();


            productArrayToShow = w[position];

        } catch (Exception e) {}
    }

//原始代码

ArrayList<String[]>allProducts = new ArrayList<String[]>();
    for (int i = 0; i < tokens.length; i++) {
        String a = dumpTitles("ProductName", i);
        element = a.split("!");
        allProducts.add(element);
    }


    String[][] w; = new String[allProducts.size()][];
        for (int a = 0; a<allProducts.size(); a++) {
            w[a] = (String[])allProducts.toArray(new String[allProducts.size()]);
        }

最佳答案

为什么不只是

String[][] w = allProducts.toArray(new String[][] {});

关于java - 如何从数组的 ArrayList 转换为数组的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8031630/

相关文章:

java - WatchService 和 FileObserver 有什么区别

android - Android 7 上的应用程序崩溃

java - 游戏得分简单算法

java - 关于渲染PDF和修改Uri

java - 为什么我的 Java 对象被复制或 finalize() 被调用两次?

用于数组的 Java 函数,如 PHP 的 join()?

将多个 OpenCL 缓冲区组合成一个大缓冲区

java - 分析 Java EE 应用程序 - 要寻找什么以及要进行哪些更改?

java - 360k文档后的ElasticSearch docker “HTTP/1.1 429 Too Many Requests”

android - 如何在 JSON 对象中添加字符串数组?