标题:计算日期间隔一直出错,大家帮忙看一下
只看楼主
qxhan1128
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2006-4-25
 问题点数:0 回复次数:2 
计算日期间隔一直出错,大家帮忙看一下

计算日期间隔一直出错,大家帮忙看一下
<%@page contentType="text/html; charset=gb2312" import="java.sql.Date,java.text.DateFormat,java.util.*,java.io.*,java.text.*,java.sql.*,com.util.*,com.fredck.FCKeditor.*"%>

<%!
//计算日期间隔
int getDays(Date sd,Date ed){
return (ed.getTime()-sd.getTime())/(3600*24*1000);
}
%>
<%=getDays("2007-1-31","2007-1-11")%>


错误提示

An error occurred at line: 11 in the jsp file: /News/test.jsp
Generated servlet error:
C:\tomcat\work\Catalina\localhost\_\org\apache\jsp\News\test_jsp.java:22: possible loss of precision
found : long
required: int
return (ed.getTime()-sd.getTime())/(3600*24*1000);
^


An error occurred at line: 17 in the jsp file: /News/test.jsp
Generated servlet error:
C:\tomcat\work\Catalina\localhost\_\org\apache\jsp\News\test_jsp.java:69: getDays(java.sql.Date,java.sql.Date) in org.apache.jsp.News.test_jsp cannot be applied to (java.lang.String,java.lang.String)
out.print(getDays("2007-1-31","2007-1-11"));

搜索更多相关主题的帖子: occurred blank return import target 
2007-01-31 09:43
支离破碎
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:737
专家分:0
注 册:2007-1-4
得分:0 
类型转化。
found : long
required: int

人生漂泊無依,有如浮萍菱花,隨水飄流,你会在我这里停留吗?
[url=http://51mynet.]http://51mynet.[/url]
2007-01-31 09:49
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 

首先,你不能把String转为Date
int getDays(Date sd,Date ed){
return (ed.getTime()-sd.getTime())/(3600*24*1000);
}
%>
<%=getDays("2007-1-31","2007-1-11")%>
你这个方法,定义的时候,要求传入的参数是Date对象,可是你传进去的却是String对象,这当然会错


其次,你(ed.getTime()-sd.getTime())/(3600*24*1000);这里运算的时候,ed.getTime返回的是long,可是运算完后,却把它赋给int,当然会错


可惜不是你,陪我到最后
2007-01-31 09:52



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-118955-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017454 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved