自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

淺析.NET類型轉(zhuǎn)換的四種方法

開發(fā) 后端
本文中作者對.NET類型轉(zhuǎn)換的方法做了總結(jié),特別是.NET Framework 2.0 版的TryParse功能。希望通過本文的閱讀可以給您帶來幫助。

.NET類型轉(zhuǎn)型的四種做法:

◆ 強制轉(zhuǎn)型:(int)變量名稱

◆ int.Parse(字符串變量名稱)

◆ Convert.To類型(變量名稱)

◆ TryParse


強制轉(zhuǎn)型 (casting)

◆ 浮點數(shù)會做無條件舍去,失去精確度

◆ 可處理 object 轉(zhuǎn) int,但遇到 object 為 null 時會產(chǎn)生 error

◆ 某些情況下,如 object 轉(zhuǎn)型成 int,有時正常,但有時會無故發(fā)生 error,原因不明

◆ 無法處理 string 轉(zhuǎn) int (程序中常會用到的功能)

◆ 千萬不可用來處理 char 類型,否則傳回的是 ASCII 碼,而不是字面上的數(shù)字

int.Parse(字符串變量名稱)

◆ 只能處理 string 轉(zhuǎn) int 或其它類型,無法處理 string 以外的類型,功能有限

◆ 遇到 string 為 null 或 string.Empty 時,仍會造成程序 error

◆ 亦可變化使用:「類型.Parse(string)」,但參數(shù)只能丟 string

Convert.To類型(變量名稱)

◆ 可處理所有 .NET 的類型、功能完整

◆ 可處理 null,幾乎不會因轉(zhuǎn)型造成程序 error

◆ 透過「Convert.ToInt32(變量)」轉(zhuǎn)型成 int 時,變數(shù)若為 object 或 string 類型,當其值為 null 時,會傳回 0,不會造成程序 error

◆ 續(xù)前一點,若此 string 類型的變量,其原始值為 string.Empty,在轉(zhuǎn)型成 int 時,仍會造成程序 error

◆ 浮點數(shù)會做四舍五入

◆ 千萬不可用來處理 char 類型,否則傳回的是 ASCII 碼,而不是字面上的數(shù)字

測試范例:

protected void Page_Load(object sender, EventArgs e)
{
    char i1 = '0';
    char i2 = '9';
    string i1 = null;
    string i2 = "9";
    string i3 = string.Empty; 
    int i1 = 0;
    int i2 = 9;
    double i1 = 1.2345;
    double i2 = 1.5678;
    object i1 = null;
    object i2 = 9;

    // 浮點數(shù)會做無條件舍去,某些情況會無故產(chǎn)生 error
    Response.Write((int)i1 + ", " + (int)i2 + "<br>");

    // 只能處理「字符串」轉(zhuǎn)型成其它類型,功能有限
    Response.Write(int.Parse(i1) + ", " + int.Parse(i2) + "<br>");  

    // 可處理所有類型及 Null,但浮點數(shù)會做四舍五入。推薦使用,但不可處理 char 類型
    Response.Write(Convert.ToInt32(i1) + ", " + Convert.ToInt32(i2) + "<br>");  
}

遇到要特別注意數(shù)字、金額精確度的項目時,應(yīng)特別注意。

TryParse

這個方法是 .NET Framework 2.0 版的新功能。將數(shù)字的字串表示轉(zhuǎn)換成它的對等32 位元帶正負號的整數(shù)。傳回指示作業(yè)是否成功的值。 TryParse 方法與 Parse 方法類似,除了TryParse 方法在轉(zhuǎn)換失敗時不會擲回例外狀況以外。

【編輯推薦】

  1. 跟MVP學(xué)WinForm視頻教程之四 ADO.NET
  2. .NET框架4.0新功能先睹為快
  3. .NET開發(fā)十大常用工具軟件分享
責任編輯:楊鵬飛 來源: 51CTO整理
相關(guān)推薦

2009-09-17 16:55:58

C#組件設(shè)計

2009-08-26 15:04:35

C#轉(zhuǎn)換

2022-06-27 11:09:06

邊緣計算

2014-03-17 09:22:43

Linux命令

2022-09-02 14:29:01

JavaScrip數(shù)組屬性

2009-11-23 15:57:51

PHP偽靜態(tài)

2021-03-10 10:13:39

爬蟲Python代碼

2011-06-22 15:21:08

XML

2020-08-10 00:30:55

備份密碼iPhone移動安全

2009-03-31 13:12:30

解析XMLJava

2022-11-04 13:35:29

IT遠程工作混合工作

2022-12-07 10:28:22

2010-03-18 17:57:37

Java XMLSoc

2010-08-02 16:47:46

Flex

2020-07-24 09:56:12

React開發(fā)數(shù)據(jù)

2020-01-21 19:15:23

漏洞安全IT

2014-02-28 10:50:24

Linux命令

2021-09-03 11:24:04

云計算云計算環(huán)境云應(yīng)用

2025-03-12 09:54:02

2009-08-05 14:09:04

C#日期轉(zhuǎn)換
點贊
收藏

51CTO技術(shù)棧公眾號