JAVA中两个String类型的时间戳怎么样比较大小?
问题描述
1.从数据库里面获得的时间戳是String类型的,要与当前时间比较,判断登陆是否过期 生成一long类型的当前时间,把String类型强制转换成long类型报错,代码如下:
long currentTime = System.currentTimeMillis(); //当前时间//System.out.println('currentTime' + currentTime);long expireTime = Long.parseLong(token1.getExpireTime()); //过期时间//System.out.println('expireTime : ' + expireTime);
错误信息如下:
java.lang.NumberFormatException: For input string: '1496733869286 ' at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Long.parseLong(Long.java:589) at java.lang.Long.parseLong(Long.java:631) at com.tustcs.matrix.util.Interceptor.preHandle(Interceptor.java:45) at org.springframework.web.servlet.HandlerExecutionChain.applyPreHandle(HandlerExecutionChain.java:134) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:954) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:968)
2.发现控制台输出的当前时间不对3.测试如下:
4.数据库信息如下:
问题解答
回答1:trim一下再转long
回答2:java.lang.NumberFormatException: For input string: '1496733869286 '你看你后面有一个空格。
PS. 你这个也不叫做“String类型强制转换成long类型报错”,概念错误了
回答3:For input string: '1496733869286 ' 为什么数字后面有个空格?
回答4:long i = 1234893584;String s = String.valueOf(i);这么转
相关文章:
1. golang - 用IDE看docker源码时的小问题2. mysql - 请教一个Java做数据库缓存的问题3. Python两个list互换,两种不同的操作结果有差异,原因是什么呢?4. docker api 开发的端口怎么获取?5. 请问一下各位老鸟 我一直在学习独孤九贱 现在是在tp5 今天发现 这个系列视频没有实战6. docker容器呢SSH为什么连不通呢?7. docker网络端口映射,没有方便点的操作方法么?8. docker绑定了nginx端口 外部访问不到9. angular.js - Angularjs中点击事件传递参数 给class更换样式。10. angular.js - 关于指令link 中的创建变量问题

网公网安备