我有一些MATLAB代碼和一些需要彼此交談的Java代碼。我得到NoSuchMethodError
。當我將MATLAB雙數組傳遞給接受double[]
參數的Java方法時。奇怪的類從MATLAB傳遞到Java
所以我寫了一個簡單的「Hello World」,以獲取類傳遞給方法
public void printArray(Object array) {
System.out.println(array.getClass());
System.out.println(array.getClass().getPackage());
}
調用此方法的對象從MATLAB,我得到這個有趣的輸出:
>> a.printArray(2)
class java.lang.Double
package java.lang
>> a.printArray('hello')
class java.lang.String
package java.lang
>> a.printArray(true)
class java.lang.Boolean
package java.lang
>> a.printArray([2 3 4])
class [D
null
>> a.printArray([true false])
class [Z
null
有人可以解釋發生了什麼。我有MATLAB R14,並且Java類與1.3兼容性編譯。
好像預期的行爲...數組是原始的布爾和雙打的。你可能會描述給你NoSuchMethodError異常的代碼嗎? – 2009-01-21 08:44:13