国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#數據類型的轉換方法

2023-05-08 19:02:31
字體:
來源:轉載
供稿:網友

C#中的數據類型有兩種轉換方式:隱式轉換和顯式轉換,即強制轉換,也可以用類型轉換方法來進行命令式顯式轉換。

1)隱式轉換

與C++一樣,當轉換不會造成信息丟失時,C# 一般會采用自動的隱式轉換(implicit conversion)。隱式轉換包括對數值、枚舉和引用的隱式轉換。隱式轉換可以發生在方法調用、表達式計算和分配時。但是不存在到字符類型char的隱式轉換。數值類型的隱式轉換參見表17-8。

17-8 隱式數值類型轉換
被轉換類型
可安全轉換到的類型
sbyte
short、int、long、float、double、decimal
byte
short、ushort、int、uint、long、ulong、float、double、decimal
short
int、long、float、double、decimal
ushort
int、uint、long、ulong、float、double、decimal
int
long、float、double、decimal
uint
long、ulong、float、double、decimal
long
float、double、decimal
ulong
float、double、decimal
float
double
char
ushort、int、uint、long、ulong、float、double、decimal
2)顯式轉換
與C++一樣,C# 中的顯式轉換(implicit conversion)也是指使用強制轉換(cast)運算符“(類型)”進行的類型轉換。如果顯式轉換位于“已檢驗”(checked)上下文內,在被轉換的值超出目標類型的取值范圍時,會導致OverflowException異常,這是C# 新增的觀念。如果顯式轉換位于“未檢驗”(unchecked)上下文內,則不會拋出異常,但是轉換行為會不明確也不可靠,這點與C++類似。表17-9列出了可以安全進行顯式轉換的類型。
17-9 顯式數值類型轉換
被轉換類型
可安全轉換到的類型
sbyte
byte、ushort、uint、ulong、char
byte
sbyte、char
short
sbyte、byte、ushort、uint、ulong、char
ushort
sbyte、byte、short、char
int
sbyte、byte、short、ushort、uint、ulong、char
uint
sbyte、byte、short、ushort、char
long
sbyte、byte、short、ushort、int、uint、ulong、char
ulong
sbyte、byte、short、ushort、int、uint、long、char
float
sbyte、byte、short、ushort、int、uint、long、ulong、decimal、char
double
sbyte、byte、short、ushort、int、uint、long、ulong、float、decimal、char
decimal
sbyte、byte、short、ushort、int、uint、long、ulong、float、double、char
char
sbyte、byte、short
3)命令轉換
除了上面所介紹的隱式和顯式轉換外,在C# 中還可以利用.NET的System.Convert類提供的一套公用靜態的轉換方法,來進行顯式類型轉換,參見表17-10。
17-10 顯式類型轉換的靜態方法
方法
功能
ToBoolean
將指定的值轉換為等效的布爾值。
ToByte
將指定的值轉換為8位無符號整數。
ToChar
將指定的值轉換為Unicode字符。
ToDateTime
將指定的值轉換為DateTime
ToDecimal
將指定值轉換為Decimal數字。
ToDouble
將指定的值轉換為雙精度浮點數字。
ToInt16
將指定的值轉換為16位有符號整數。
ToInt32
將指定的值轉換為32位有符號整數。
ToInt64
將指定的值轉換為64位有符號整數。
ToSByte
將指定的值轉換為8位有符號整數。
ToSingle
將指定的值轉換為單精度浮點數字。
ToString
將指定值轉換為其等效的String表示形式。
ToUInt16
將指定的值轉換為16位無符號整數。
ToUInt32
將指定的值轉換為32位無符號整數。
ToUInt64
將指定的值轉換為64位無符號整數。
例如:
using System;
int i = 1234;
Conver.ToInt16(i);
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 嘉善县| 海林市| 安义县| 虞城县| 大悟县| 印江| 陆良县| 蓬溪县| 宝坻区| 石城县| 仁布县| 宿迁市| 曲阜市| 萨嘎县| 依安县| 东港市| 北票市| 手机| 南充市| 和顺县| 金坛市| 宣化县| 大埔县| 洪洞县| 上栗县| 颍上县| 临沧市| 河东区| 枣庄市| 上饶县| 怀化市| 衡南县| 云安县| 集安市| 集贤县| 长寿区| 无极县| 平和县| 潜江市| 南充市| 许昌县|