本人是C#行業的小白剛入行倆月多點,剛剛查資料學習了一些型別轉換原理,也就是編譯器編譯時如何對資料進行型別轉換。不知道對不對就沒做筆記但是還想記錄一下就發個帖子吧,歡迎各位大佬指教指教,有錯誤技術提出,小老弟不勝感激!
進入正題。
型別轉換大體上應該分隱是轉換、顯示轉換、方法轉換、自定義轉等換這幾類。編譯器進行的就是隱式轉換和顯示轉換。
隱式轉換:編譯器會先判斷資料范圍,當目標資料范圍大于源資料范圍時,編譯器不做任何動作自動轉換。否則資料安全無法保證編譯器會報錯。這里可能也有人用有is和as運算子。is運算子,編譯器檢查是否與型別兼容,兼容回傳TRUE,不兼容回傳FALSE。as關鍵字編譯器也檢查是否兼容,如果不兼容回傳null。
顯示轉化:編譯器就知道操作會造成資料不安全。當源資料型別大于目標型別,就會截取源值,把截取后的值作為目標值。當源型別小于目標型別,編譯器會自動填充字符,使其與目標資料相同,然后作為目標資料。如果源型別與目標型別大小相同,就直接作為目標型別的值,如果源型別與目標型別不兼容編譯器無法轉換就會報錯。
方法轉換與自定義轉換就是呼叫一些API方法。網上大神總結不少我就不班門弄斧了。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/73239.html
標籤:C#
上一篇:NetCore 啟動地址配置詳解
