1. 程式人生 > >如何將double型數值轉換為16進位制的形式

如何將double型數值轉換為16進位制的形式

昨天程式設計序遇到一個隨機生成的uid,怎麼都不知道怎麼生成的,最後用了HttpAnalyzerstdv7查了一下,原來是在js中生成的,為了模擬js,筆者將其內部函式看了一下,發現有程式碼中有一double型變數,將其轉換成為了16進位制,當時那個糾結啊,浪費了那麼多時間也沒想明白那些a,b,c,d和數字怎麼出來的。還是問了一下老師,老實說可能是16進位制。筆者最後做了實驗,發現真的是這樣。不多說,將原始碼發出來,供大家參考學習。

    public String SetNewGuid() {
   String guid = "";
   for (int i = 1; i <= 32; i++) {
   int n =(int)Math.floor(Math.random() * 16.0);
   String uid=Integer.toHexString(n)  ;
   System.out.println(uid);
       guid += uid;
       if ((i == 8) || (i == 12) || (i == 16) || (i == 20))
           guid += "-";
   }
   return guid;
}

很簡單的一個操作,現在看起來都感覺可笑,可如果你不想明白,真的不清楚怎麼回事。所以說,聰明的大腦遠勝於無謂的刻苦,多想多思考才是未來發展的主題!