[英]Trying to save values to class Object
I posted a question in the past but didn't get any response so I'm assuming my question wasn't clear.我过去发布了一个问题,但没有得到任何回复,所以我假设我的问题不清楚。 Can we define new Object[3][] without defining number of columns?
我们可以在不定义列数的情况下定义 new Object[3][] 吗? Hoping following code is more readable and easy to understand.
希望以下代码更具可读性和易于理解。
Question: Why is retval[0] always null?问:为什么 retval[0] 总是 null?
Please help.请帮忙。 Thanks,
谢谢,
package YTesting1.YTesting1;
import org.testng.annotations.Test;
public class Test1 {
@Test
public void MyTest() {
Object[][] retval = new Object[1][];
String mm = "Hello";
String o = "World";
String s = "Yeaah";
(new Object[1])[0] = new Test2(mm, o, s);
retval[0] = new Object[1];
System.out.println("retval = " +retval[0]);
}
}
package YTesting1.YTesting1;
public class Test2 {
private String str1 = "";
private String str2 = "";
private String str3= "";
public Test2(String lstr1, String lstr2, String lstr3){
this.str1 = lstr1;
this.str2 = lstr2;
this.str3 = lstr3;
}
}
retval[0]
is not null, it is assigned to an empty array of Object. retval[0]
不是 null,它被分配给一个空数组 Object。
It is possible to assign to retval[0]
some another array and populate it without indicating the number of columns可以将另一个数组分配给
retval[0]
并填充它而不指示列数
public static void main(String ... args) {
Object[][] retval = new Object[1][];
String mm = "Hello";
String o = "World";
String s = "Yeaah";
//(new Object[1])[0] = new Test2(mm, o, s);
retval[0] = new Object[1];
System.out.println("retval[0] = " + retval[0]);
System.out.println("retval[0][0] = " +retval[0][0]);
System.out.println("retval = " + Arrays.deepToString(retval));
retval[0] = new String[] { // 3-element string array
mm, o, s
};
System.out.println("retval[0] = " + retval[0]);
System.out.println("retval[0][0] = " +retval[0][0]);
System.out.println("retval = " + Arrays.deepToString(retval));
}
Output: Output:
retval[0] = [Ljava.lang.Object;@5479e3f
retval[0][0] = null
retval = [[null]]
retval[0] = [Ljava.lang.String;@66133adc
retval[0][0] = Hello
retval = [[Hello, World, Yeaah]]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.