私はJavaでリフレクションを使用しています。実行時に文字列を整数にキャストする方法
私は、実行時に渡すメソッドのパラメータの型を知るようになっています。だから、ファイルから文字列変数にパラメータ値を取得しています。
iは整数としてパラメータの型ことを知るようになると場合、私は、文字列値をcontaintingオブジェクトを渡すとだから今、私は
引数の型の不一致 java.lang.IllegalArgumentExceptionが取得しています:引数の型の不一致
をClass classDefinition = Class.forName("webservices."+objectName);
String methodName = set"+fieldNameAttay[i].substring(0,1)).toUpperCase()+fieldNameAttay[i].substring(1); Field f = classDefinition.getDeclaredField(fieldNameAttay[i]);
try
{
//argType = f.getType();
Method meth = classDefinition.getMethod(methodName,f.getType());
Object arg = new Object[]{fieldValueArray[i]}; //fieldValueArray[i] is always string array
meth.invoke(object, arg); //If f.getType is Integer this //throws ex
}
catch (Exception e)
{
System.err.println(e.getMessage());
e.printStackTrace();
}