基于數(shù)據(jù)類型轉(zhuǎn)換(裝箱與拆箱)與常量詳解
隱式轉(zhuǎn)換[自動類型轉(zhuǎn)換]:
兩種類型要兼容,原類型值域要小于目標(biāo)類型值域,可以簡單的理解為由小轉(zhuǎn)大。
public class Test { private void Start() { int a = 10; float b = a;//int 類型隱式轉(zhuǎn)換為 float 類型 } }
顯示轉(zhuǎn)換[強制類型轉(zhuǎn)換]:
兩種類型要兼容,原類型值域要大于目標(biāo)類型值域,可以簡單的理解為由大轉(zhuǎn)小。
【缺點】:1、數(shù)據(jù)溢出。2、精度丟失。
數(shù)值類型之間的轉(zhuǎn)換。
public class Test { private void Start() { float a = 1.5f; int b = (int)a;//float 類型強制轉(zhuǎn)換為 int 類型 } }
其他類型轉(zhuǎn)換成字符串類型調(diào)用ToString()方法。
public class Test { private void Start() { float a = 1.5f; bool val = true; string str = val.ToString();//bool 類型強制轉(zhuǎn)換為 string 類型 str = a.ToString();//float 類型強制轉(zhuǎn)換為 string 類型 } }
字符串類型轉(zhuǎn)換為其他基本類型調(diào)用Parse()方法和TryParse()方法。
public class Test { private void Start() { string str = "true"; bool v = bool.Parse(str);//如果轉(zhuǎn)換成功會將值賦給變量 v,如果轉(zhuǎn)換不成功會報錯。 int num; bool val = int.TryParse(str, out num);//不管成功與否都會返回一個 bool 值。如果轉(zhuǎn)換成功,會將值賦給變量 num。 } }
其他基本類型之間互相轉(zhuǎn)換用 Convert。(使用 Convert 需要引用 using System 程序集)
using UnityEngine; using System; public class Test { private void Start() { bool val = false; int num = Convert.ToInt32(val); int a = 0; bool v = Convert.ToBoolean(a); } }
裝箱:值類型轉(zhuǎn)換成引用類型。
拆箱:引用類型轉(zhuǎn)換為值類型。
注意:
1、兩種類型只有存在繼承關(guān)系的時候,才可能出現(xiàn)裝箱或者拆箱操作。
2、裝箱和拆箱的本質(zhì)上是數(shù)據(jù)存儲在??臻g與堆空間之間的變更,因此頻繁的裝箱或者拆箱會降低運行效率,所以代碼中盡量少用裝箱或者拆箱操作。
常量:一個不能變化的量,常量一旦聲明,就不可以再重新賦值。
命名規(guī)則:常量名的命名一般全是大寫,單詞與單詞之間用下劃線分隔(例:SERVER_IP)。
常量的聲明:需要加上關(guān)鍵字 const ,且必須在聲明時賦值。(例:const int SERVER_IP;)
以上這篇基于數(shù)據(jù)類型轉(zhuǎn)換(裝箱與拆箱)與常量詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持我們。
欄 目:C#教程
本文標(biāo)題:基于數(shù)據(jù)類型轉(zhuǎn)換(裝箱與拆箱)與常量詳解
本文地址:http://mengdiqiu.com.cn/a1/C_jiaocheng/5375.html
您可能感興趣的文章
- 01-10Extjs4如何處理后臺json數(shù)據(jù)中日期和時間
- 01-10C#異步綁定數(shù)據(jù)實現(xiàn)方法
- 01-10C#動態(tài)創(chuàng)建Access數(shù)據(jù)庫及密碼的方法
- 01-10C#使用ADO.Net部件來訪問Access數(shù)據(jù)庫的方法
- 01-10C#實現(xiàn)ComboBox控件顯示出多個數(shù)據(jù)源屬性的方法
- 01-10C#將圖片存放到SQL SERVER數(shù)據(jù)庫中的方法
- 01-10基于C#實現(xiàn)簡單離線注冊碼生成與驗證
- 01-10C#基于UDP實現(xiàn)的P2P語音聊天工具
- 01-10C#編程自學(xué)之?dāng)?shù)據(jù)類型和變量二
- 01-10C#編程自學(xué)之?dāng)?shù)據(jù)類型和變量三


閱讀排行
本欄相關(guān)
- 01-10C#通過反射獲取當(dāng)前工程中所有窗體并
- 01-10關(guān)于ASP網(wǎng)頁無法打開的解決方案
- 01-10WinForm限制窗體不能移到屏幕外的方法
- 01-10WinForm繪制圓角的方法
- 01-10C#實現(xiàn)txt定位指定行完整實例
- 01-10WinForm實現(xiàn)仿視頻 器左下角滾動新
- 01-10C#停止線程的方法
- 01-10C#實現(xiàn)清空回收站的方法
- 01-10C#通過重寫Panel改變邊框顏色與寬度的
- 01-10C#實現(xiàn)讀取注冊表監(jiān)控當(dāng)前操作系統(tǒng)已
隨機閱讀
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-10delphi制作wav文件的方法
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 04-02jquery與jsp,用jquery
- 01-11ajax實現(xiàn)頁面的局部加載
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-10C#中split用法實例總結(jié)
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改