所以我写了一个可以接受任何Java对象的方法,我发现了
public void mymethod(Object javaobject) {
}
有效,但可以
public void mymethod(Object[] javaobject) {
}
Eclipse抛出错误
The method mymethod(Object[]) in the type myClass is not applicable for the arguments (Object)
所以我的问题是,这两种类型的区别在哪里?
答案 0 :(得分:0)
一个数组是一个Object
,但一个Object
不是(必要)一个Object
数组。您可以使方法采用varargs,
public void mymethod(Object... javaobject) {
// ...
}
然后,在两种情况下(与一个或多个javaobject
(s)调用),它都将像一个数组一样工作(即Object
是一个数组)。
答案 1 :(得分:0)
简单来说,区别在于Object
是单个对象,而Object[]
是索引对象的数组(多个或集合)。
例如,您可能有一个对象,其中包含类似
的字符串Object obj = "Hello";
或者您可以使用类似的字符串数组
Object[] objArray = new Object[2];
objArray[0] = "Hello,";
objArray[1] = " world!";
因此,obj
是一个对象。而objArray
是一个包含多个以0开头索引的对象的数组。希望这会有所帮助!