Java反射传递参数

Java反射传递参数,java,reflection,Java,Reflection,嗨 我有一些方法,每个方法分别需要整数和字符串。我从xml文件中读取输入。我不知道它将是什么类型的输入。我正在使用反射来调用该方法。我读取xml并将其存储为字符串。我通过传入参数来调用该方法。其中一个方法需要一个整数,但我传入字符串。当我尝试执行getType和cast时,它会抛出类强制转换异常 任何帮助都将不胜感激 谢谢, Java是强类型语言。不能将字符串传递给integer方法。您应该将字符串转换为整数,您可以使用integer.parseInt()..Java是强类型语言。不能将字符串传

我有一些方法,每个方法分别需要整数和字符串。我从xml文件中读取输入。我不知道它将是什么类型的输入。我正在使用反射来调用该方法。我读取xml并将其存储为字符串。我通过传入参数来调用该方法。其中一个方法需要一个整数,但我传入字符串。当我尝试执行getType和cast时,它会抛出类强制转换异常

任何帮助都将不胜感激

谢谢,
Java是强类型语言。不能将字符串传递给integer方法。您应该将字符串转换为整数,您可以使用integer.parseInt()..

Java是强类型语言。不能将字符串传递给integer方法。您应该将字符串转换为整数,您可以使用integer.parseInt()…

如果所有输入都是XML文件中的字符串,那么XML文件和普通文本文件之间真的没有区别,是吗

主要的问题是数据类型的表示:您没有按预期使用XML。XML文件应表示输入具有的特定数据类型。例如,一个人的年龄应表示为
int
。当您将所有内容编码为字符串时,您将丢失类型语义

对于实际代码,分别使用位于和的
xmlcodecoder
xmldecorder
java类

基本上,您将执行以下操作:

XMLEncoder encoder = new XMLEncoder();
XMLDecoder decoder = new XMLDecoder();
编码(又名:将数据存储到XML文件) -以整数类型写入第一个输入(
encoder.writeInt(someIntValue)
) -将第二个输入写入字符串:
encoder.writeString(someStrValue)
-等


解码时,先解码一个整数,然后解码一个字符串,等等。

如果XML文件中的所有输入都是字符串,那么XML文件和普通文本文件之间真的没有区别,是吗

主要的问题是数据类型的表示:您没有按预期使用XML。XML文件应表示输入具有的特定数据类型。例如,一个人的年龄应表示为
int
。当您将所有内容编码为字符串时,您将丢失类型语义

对于实际代码,分别使用位于和的
xmlcodecoder
xmldecorder
java类

基本上,您将执行以下操作:

XMLEncoder encoder = new XMLEncoder();
XMLDecoder decoder = new XMLDecoder();
编码(又名:将数据存储到XML文件) -以整数类型写入第一个输入(
encoder.writeInt(someIntValue)
) -将第二个输入写入字符串:
encoder.writeString(someStrValue)
-等


解码时,先解码一个整数,然后再解码一个字符串,等等。

正如Gurcel提到的,您不能这样做,但有一些选项。帮助我们进一步了解实际需求是什么,如果可能的话,分享一个xml文档示例,以及您想要构建的对象/代码示例。展示您的代码,然后我们可以给您一些ideaAs Gurcel提到的您不能这样做,但有一些选项。帮助我们进一步了解实际需求是什么,如果可能的话,分享一个xml文档示例,以及您想要构建的对象/代码示例。展示您的代码,然后我们可以给您一些想法