簡體   English   中英

使用帶有參數列表的 java 反射調用方法

[英]Invoke method with java reflection with list of parameters

我目前正在嘗試通過反射執行一個方法,但方法參數只是一個列表。

List<Object> params = List.of("param1", "param2", 3, "param4");
Method method = getMethod(); //returns the method
AppInstance instance = new AppInstance();
method.invoke(instance, params);

該方法如下所示:

public void myMethod(String param1, String param2, int param3, String param4){
    //some code
}

但 Java 對待他們就像

public void myMethod(List<Object> params){
    //some code
}

問題是參數的長度各不相同,方法可以有任意數量的參數。

有沒有辦法解決這個問題?

嘗試這個

Object[] params = new Object[]{"param1", "param2", 3, "param4"};
Method method = getMethod();
AppInstance instance = new AppInstance();
method.invoke(instance, params);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM