30 C Convert和parse的區別

2021-08-06 03:54:05 字數 1124 閱讀 7218

convert.toint32()與int.parse()的區別(1)這兩個方法的最大不同是它們對null值的處理方法: 

convert.toint32(null)會返回0而不會產生任何異常,但int.parse(null)則會產生異常。 

沒搞清楚convert.toint32和int.parse()的細細微區別時千萬別亂用,否則可能會產生無法預料的結果,舉例來說:假如從url中取乙個引數page的值,我們知道這個值是乙個int,所以即可以用convert.toint32(request.querystring["page"]),也可以用,int.parse(request.querystring["page"]),但是如果page這個引數在url中不存在,那麼前者將返回0,0可能是乙個有效的值,所以你不知道url中原來根本就沒有這個引數而繼續進行下一下的處理,這就可能產生意想不到的效果,而用後一種辦法的話沒有page這個引數會丟擲異常,我們可以捕獲異常然後再做相應的處理,比如提示使用者缺少引數,而不是把引數值當做0來處理。 

(2)還有一點區別就是 

a. convert.toint32(double value) 

如果 value 為兩個整數中間的數字,則返回二者中的偶數;即 3.5轉換為4,4.5 轉換為 4,而 5.5 轉換為 6。 不過4.6可以轉換為5,4.4轉換為4 

b. int.parse("4.5") 

直接報錯:"輸入字串的格式不正確". 

c. int(4.6) = 4 

int轉化其他數值型別為int時沒有四捨五入,強制轉換 

int.parse是轉換string為int 

convert.toint32是轉換繼承自object的物件為int的. 

你得到乙個object物件,你想把它轉換為int,用int.parse就不可以,要用convert.toint32. 

個人總結: 

(1)convert.toint32的引數比較多,int.parse只能轉換string型別的. 

(2)parse就是把string轉換成int,char,double....等,也就是*.parse(string) 括號中的一定要是string. 

(3)convert可以提供多種型別的轉換,也就是convert.*()括號中可以為很多種型別(包括string).

eCos 3 0的編譯和執行

首先需要編譯目標平台的庫,我試過用redboot編譯出來的庫是不行的,在configure tool 裡面新建乙個工程vmware.ecc,然後進入模板選擇i386 pc target vmware 下的default 正常情況下,這個編譯不會有問題,編譯完後在vmware install目錄下產生...

Vue 3 0 防抖和節流

專案中遇到了防抖和節流,所以整理一下,並且在3.0中嘗試 防抖 在一段時間內函式只會執行一次,如果在這個時間段內再次觸發函式,則重新計算函式執行時間 可以用作提交事件,防止使用者重複提交 div add add button template import from vue export defau...

vue3 0 和 2 0的差異

vue cli2.0與3.0在目錄結構方面,有明顯的不同 vue cli3.0移除了配置檔案目錄,config 和 build 資料夾 同時移除了 static 靜態資料夾,新增了 public 資料夾,開啟層級目錄還會發現,index.html 移動到 public 中 3.0 config檔案已...