I need to initialise a 2d array like below
Object[][] someName = {
{"param1","param2","param3"},
{"param4","param5","param6"}
};
I tried like
JExpression exp = JExpr.newArray(codeModel.ref(String.class)).add(JExpr.lit("param1").add(JExpr.lit("param2"));
methodBlock.decl(JMod.NONE, codeModel.ref(Object.class).array().array(), dataProviderName, exp);
but it initilases 1d array,
any help is appreciated
It might not be exactly the same, but the following code initializes the example 2d array:
This generates the following, which explicitly declares the inner arrays:
The code you tried was almost correct, you just needed to declare the array within the
newArray()
call:JExpr.newArray(codeModel.ref(String.class).array())