2

在这里,我试图在 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}};
    }
}
4

2 回答 2

6

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

Object[] multiDimensionalObjectArray = {"Hi!", new Object[] {5, 5}};
于 2013-03-26T18:20:27.933 回答
2

您不是在创建多维数组。您正在创建一个数组,其中第一个元素是一个字符串 - 这不是一个开始的数组。当然,您可以将第二个元素设为数组……您希望它是哪种数组?鉴于它包含两个整数,也许您希望它是一个int[]

Object[] mixedDataArray = { "Hi!", new int[] { 5, 5 } };
于 2013-03-26T18:21:41.013 回答