下面是我正在执行的代码,第14行出现错误
类型不匹配:无法从字符串转换为timelimit
TimeLimit timeLimitValues = timeLimitValues(clientCompanyMarketMapId,
productCatagory, productSubCatagory, supplierId);
String timeLimitValue = timeLimitValues.getTimeLimitValue();
String timeLimitTC = timeLimitValues.getTimeLimitTC();
timeLimitValues.getBookTravelDateTC();
String isPaymentEnabledFlag = timeLimitValues.getIsPaymentEnbld();
String isExpOnBkDate = timeLimitValues.getIsExponBkDate();
String timeExpiryDate = null;
TimeLimit expiryDate = new TimeLimit();
if (isPaymentEnabledFlag.equals("Y")) {
if (isExpOnBkDate.equals("Y")) {
if (timeLimitTC.equals("DAYS")) {
c.add(Calendar.DATE, Integer.parseInt(timeLimitValue));
timeExpiryDate = sdf.format(c.getTime());
expiryDate = timeExpiryDate;
System.out.println("Expiry Date: " + timeExpiryDate);
}
请帮助/引导
1条答案
按热度按时间rekjcdws1#
timeExpiryDate
在代码中声明为String
.expiryDate
被宣布为TimeLimit
.你有电话吗
因为你想分配一个
String
引用TimeLimit
参考文献。您需要编写某种转换方法,该方法需要
String
创造了一个TimeLimit
从它那里。它可以是某个地方的实用方法,也可以是TimeLimit(String timeRepresentation)
中的构造函数TimeLimit
班级。比如你可以写或
java不像c++(如果你已经习惯了的话)。java不会像c++那样自动调用“转换”构造函数。所以即使你已经定义了
TimeLimit(String)
构造函数,java不会自动调用它来进行转换。你需要明确地称呼它。但无论如何,如果不在某个地方编写一些转换方法,然后调用它,就无法完成赋值。