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