Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从字符串转换为对象时,获取类型转换错误_Java_String_Object_Casting - Fatal编程技术网

Java 从字符串转换为对象时,获取类型转换错误

Java 从字符串转换为对象时,获取类型转换错误,java,string,object,casting,Java,String,Object,Casting,下面是我正在执行的代码,第14行出现错误 类型不匹配:无法从字符串转换为TimeLimit 请帮助/指导timeexpireydate在代码中声明为字符串过期日期被声明为时间限制 你有电话吗 expiryDate = timeExpiryDate; 它甚至不会编译,因为您正试图将字符串引用分配给时间限制引用 您需要编写某种转换方法,该方法接受一个字符串,并从中创建一个时间限制。它可以是某个地方的实用方法,也可以是TimeLimit类中的TimeLimit(字符串时间表示)构造函数。比如你可以写

下面是我正在执行的代码,第14行出现错误

类型不匹配:无法从字符串转换为TimeLimit


请帮助/指导

timeexpireydate
在代码中声明为
字符串
<代码>过期日期被声明为时间限制

你有电话吗

expiryDate = timeExpiryDate;
它甚至不会编译,因为您正试图将
字符串
引用分配给
时间限制
引用

您需要编写某种转换方法,该方法接受一个
字符串
,并从中创建一个
时间限制
。它可以是某个地方的实用方法,也可以是
TimeLimit
类中的
TimeLimit(字符串时间表示)
构造函数。比如你可以写

expiryDate = new TimeLimit(timeExpiryDate);

不像C++(如果你习惯了)。java不会自动调用C++的“转换”构造函数。因此,即使您定义了
TimeLimit(String)
构造函数,Java也不会自动调用它来进行转换。您需要显式地调用它


但是在任何情况下,如果不您在某处编写一些转换方法,然后调用它,就无法执行赋值。

您能提供堆栈跟踪吗?expriyDate是TimeLimit类型,timeExpiryDate是String类型,因此会得到异常(最里面的if语句中的第三条语句)。您到底想做什么?将字符串timeExpiryDate转换为TimeLimit expiryDate,然后稍后返回/设置它。@Surmeet您应该具备将字符串timeExpiryDate转换为TimeLimit实例expiryDate的逻辑。你在哪里处理?您只是将字符串分配给TimeLimit@user3694267,也试过了,没用…谢谢你的帮助,但不要改变我为TimeLimit制作的POJO类。。。。。需要一些逻辑来将字符串转换为类中的TimeLimit对象,我在上面发布了一个示例。然后在某个类中编写一些进行转换的方法并调用它。
expiryDate = new TimeLimit(timeExpiryDate);
expiryDate = SomeClass.convertToTimeLimit(timeExpiryDate);