您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關怎么在C#中強制轉(zhuǎn)換類型,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
自動類型轉(zhuǎn)換
隱式類型轉(zhuǎn)換 - 這些轉(zhuǎn)換是 C# 默認的以安全方式進行的轉(zhuǎn)換, 不會導致數(shù)據(jù)丟失。例如,從小的整數(shù)類型轉(zhuǎn)換為大的整數(shù)類型,從派生類轉(zhuǎn)換為基類。
轉(zhuǎn)換規(guī)則
從存儲范圍小的類型到存儲范圍大的類型。
整數(shù)具體規(guī)則為:
byte→short(char)→int→long→float→double
也就是說byte類型的變量可以自動轉(zhuǎn)換為short類型,示例代碼:
byte b = 10; short sh = b;
在類型轉(zhuǎn)換時可以跳躍。示例代碼:
byte b1 = 100; int n = b1;
強制類型轉(zhuǎn)換
顯式類型轉(zhuǎn)換 - 顯式類型轉(zhuǎn)換,即強制類型轉(zhuǎn)換。顯式轉(zhuǎn)換需要強制轉(zhuǎn)換運算符,而且強制轉(zhuǎn)換會造成數(shù)據(jù)丟失。
轉(zhuǎn)換規(guī)則
從存儲范圍大的類型到存儲范圍小的類型。
具體規(guī)則為:
double→float→long→int→short(char)→byte
例如:
double d = 5673.74; int i; i = (int)d;
1.Convert.ToInt32() 2. int.Parse()
Convert.ToInt32()
則可以將多種類型(包括 object 引用類型)的值轉(zhuǎn)換為 int 類型,因為它有許多重載版本:
public static int ToInt32(object);
public static int ToInt32(bool);
public static int ToInt32(byte);
public static int ToInt32(char);
public static int ToInt32(decimal);
public static int ToInt32(double);
public static int ToInt32(short);
public static int ToInt32(long);
public static int ToInt32(sbyte);
public static int ToInt32(string);
Int32.Parse()
表示將包含數(shù)字的字符串轉(zhuǎn)換為32 位有符號整數(shù),屬于內(nèi)容轉(zhuǎn)換
如果 string 為空,則拋出 ArgumentNullException 異常;
如果 string 格式不正確,則拋出 FormatException 異常;
可以看出來,Convert.ToInt32()
的功能是最強大的,它把Int32.Parse()
功能包括了,也是說是Int32.Parse()是Convert.ToInt32() 的一種特殊情況。
看完上述內(nèi)容,你們對怎么在C#中強制轉(zhuǎn)換類型有進一步的了解嗎?如果還想了解更多知識或者相關內(nèi)容,請關注億速云行業(yè)資訊頻道,感謝大家的支持。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。