(類名)變數; 強制轉換 不能轉換會丟擲異常,值和 引用型別都可以變數 as 類名 as 運算子用於執行引用型別的顯式型別轉換。 如果要轉換的型別與指定型別相容,轉換就會成功;如果型別不相容,則返回null。還有conver.to***x 主要用在值型別 將乙個基本資料型別轉換為另乙個基本資料型別
(int)和int32.parse(),convert.toint32()三者的應用舉幾個例子:例子一:
long longtype = 100;
int inttype = longtype; // 錯誤,需要使用顯式強制轉換
int inttype = (int)longtype; //正確,使用了顯式強制轉換
例子二:
string stringtype = "12345";
int inttype = (int)stringtype; //錯誤,string 型別不能直接轉換為 int 型別
int inttype = int32.parse(stringtype); //正確
例子三:
long longtype = 100;
string stringtype = "12345";
object objecttype = "54321";
int inttype = convert.toint32(longtype); //正確
int inttype = convert.toint32(stringtype); //正確
int inttype = convert.toint32(objecttype); //正確
例子四:
double doubletype = int32.maxvalue + 1.011;
int inttype = (int)doubletype; //雖然執行正確,但是得出錯誤結果
int inttype = convert.toint32(doubletype) //丟擲 overflowexception 異常
c#強制轉換中(int)和int32.parse(),convert.toint32()三者的區別:
第乙個在對long 型別或是浮點型到int 型別的顯式強制轉換中使用,但是如果被轉換的數值大於int32.maxvalue 或小於 int32.minvalue,那麼則會得到乙個錯誤的結果。
第二個在符合數字格式的string到int 型別轉換過程中使用,並可以對錯誤的string數字格式的丟擲相應的異常。
第三個則可以將多種型別的值轉換為int型別,也可以對錯誤的數值丟擲相應的異常。
無論進行什麼型別的數值轉換,數值的精度問題都是我們必須考慮的。
C 中幾種資料型別轉換
c 中經常會需要資料型別轉換,比如int char,cstring 到string char uchar 等等。unicode 字符集下 cstring 轉 string void ustrtoascchar const cstringw cs,char buff string 轉cstring c...
c 中各種資料型別的轉化
c 中convert中沒有tofloat 方法。將string轉化成float可以採用下面的方法 float.parse 方法,相應的int.parse 方法。float ratio score point 100 ratio.tostring f1 可以使用上面的方法將float轉化成帶一位小數的...
C 幾種資料型別轉換
1.int 變數名 強制型別轉換 該轉換方式主要用於數字型別之間的轉換,從int型別向long,float,double,decimal 型別轉換可以使用隱式轉換,但從long型到int 就需要使用顯示轉換,即使用該型別的轉換方式否則產生編譯錯誤。該方式對於浮點數會無條件的捨去,會失去精確度 對於c...