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. mac OSX10.12.4 (16E195)下Mysql 5.7.18找不到配置文件my.cnf2. mysql - 怎么生成這個sql表?3. mysql儲存json錯誤4. php - 公眾號文章底部的小程序二維碼如何統計?5. mysql - 表名稱前綴到底有啥用?6. mysql - 數據庫表中,兩個表互為外鍵參考如何解決7. Navicat for mysql 中以json格式儲存的數據存在大量反斜杠,如何去除?8. 在mybatis使用mysql的ON DUPLICATE KEY UPDATE語法實現存在即更新應該使用哪個標簽?9. mysql - 數據庫建字段,默認值空和empty string有什么區別 11010. sql語句 - 如何在mysql中批量添加用戶?
