Java多维数组初始化器

时间:2013-03-26 18:16:50

标签: java arrays initialization

在这里,我正在尝试初始化Java中的对象数组,但我无法弄清楚如何初始化嵌套的对象数组。我尝试创建一个对象数组,其中一个字符串作为第一个元素,一个字符串数组作为第二个元素。

我遇到的错误消息:

Main.java:8: error: illegal initializer for Object

产生此错误的代码是:

import java.util.*;
import java.lang.*;

class Main
{
    public static void main (String[] args) throws java.lang.Exception
    {
        Object[] multiDimensionalObjectArray = {"Hi!", {5, 5}};
    }
}

2 个答案:

答案 0 :(得分:5)

出于某种原因,即使您不需要在主数组文字前面有new Object[],看起来您需要一个内部数组文字:

Object[] multiDimensionalObjectArray = {"Hi!", new Object[] {5, 5}};

答案 1 :(得分:2)

您不是在创建多维数组。你正在创建一个数组,其中第一个元素是一个字符串 - 这不是一个开始的数组。当然,你可以把第二个元素变成一个数组......你想要它是什么样的数组?鉴于它包含两个整数,也许你希望它是一个int[]

Object[] mixedDataArray = { "Hi!", new int[] { 5, 5 } };