在这里,我正在尝试初始化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}};
}
}
答案 0 :(得分:5)
出于某种原因,即使您不需要在主数组文字前面有new Object[]
,看起来您需要一个内部数组文字:
Object[] multiDimensionalObjectArray = {"Hi!", new Object[] {5, 5}};
答案 1 :(得分:2)
您不是在创建多维数组。你正在创建一个数组,其中第一个元素是一个字符串 - 这不是一个开始的数组。当然,你可以把第二个元素变成一个数组......你想要它是什么样的数组?鉴于它包含两个整数,也许你希望它是一个int[]
:
Object[] mixedDataArray = { "Hi!", new int[] { 5, 5 } };