最近在做專案的時候遇到這樣的乙個問題,目的是查出最近的乙個月的時間範圍,截止日期從庫中獲取的,開始日期在程式中計算得出,但是,當測試寫好的一段**時出現了問題。日期轉換之後反而比轉換之前的截止日期還靠後了。
******dateformat dateform = new ******dateformat("yyyy-mm-dd");
try catch (parseexception e)
這段**看起來沒什麼毛病,但是卻嚴重的存在錯誤。
其中count的定義這一行是主要問題的發生點。
count的列印結果:
-1702967296
為什麼會是負的?這裡是先轉為int型別的了,然後超出了整形的儲存長度,發生溢位。
所以導致了不降反增的情況。
當資料會超出整形的範圍時在資料後面加l使其直接轉為long型。
兩種比較建議的寫法:
******dateformat dateform = new ******dateformat("yyyy-mm-dd");
try catch (parseexception e)
date date = null;
try catch (parseexception e)
calendar calendar = calendar.getinstance();
calendar.settime(date);
calendar.add(calendar.month, -1);
date = calendar.gettime();
string begintime = dateform.format(date);
system.out.println(begintime);
}
mysql日期隱式轉換 mysql中的隱式轉換
什麼隱式型別轉換?在mysql中 當操作符與不同型別的運算元一起使用時,會發生型別轉換以使運算元相容。則會發生轉換隱式 也就是說,mysql會根據需要自動將數字轉換為字串,將字串轉換數字。看到這個概念之後,是不是有一種茅塞頓開的感覺。哦.原來在資料結構中telephone欄位為字串 varchar ...
scala 隱式轉換函式 隱式轉換引數
目前的scala相關部落格大概只能算乙個筆記,方便自己記錄,也幫大家查詢資訊了。首先scala中的隱式轉換可以分為隱式函式轉換與隱式引數轉換兩類,下面就來分別說一下自己對這兩種模式的理解。1 隱式函式轉換,我們先看一段 scala val x int 3.14 10 error type misma...
隱式轉換和隱式引數
1 隱式轉換 隱式轉換函式是以implicit關鍵字宣告的帶有單個引數的函式。這種函式將會自動應用,將值從一種型別轉換為另一種型別 object scala01 implicit def f1 d double int double 是輸入型別,int 是轉換後的型別 隱式函式的底層工作原理 def...