日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
.NET數(shù)據(jù)類型概述

任何一門開發(fā)語言都需要數(shù)據(jù)類型作為其基礎(chǔ)根本,就如同自然語言中的文字一般,所以想要掌握一門開發(fā)語言就要先了解其中的數(shù)據(jù)類型,接下來我就談?wù)勎覍?duì).NET的數(shù)據(jù)類型的了解(開發(fā)語言以C#為主)。

數(shù)據(jù)類型

在C#中數(shù)據(jù)類型主要可以分為值類型、引用類型和指針類型,以下是一個(gè)數(shù)據(jù)類型的歸類表:

  • ValueType
    • 數(shù)值數(shù)據(jù)
      • sbyte:-128~127
      • byte:0~255
      • short:-32768~32767
      • ushort:0~65535
      • int:-2147483648~2147483647
      • uint:0~4294967295
      • long:-9223372036854775808~9223372036854775807
      • ulong:0~18446744073709551615
      • float:1.5*10^-45~3.4*10^38
      • double:5*10^-324~1.7*10^308
      • decimal:1*10^-28~7.9*10^2
    • Boolean
      • 關(guān)鍵字:bool
      • 值范圍:True或False
    • Char
      • 關(guān)鍵字:char
      • 值范圍:一個(gè)Unicode字符,存儲(chǔ)0~65535之間的整數(shù)
    • DateTime和TimeSpan
    • Numerics
      • 結(jié)構(gòu):BigInteger
    • 枚舉
      • 底層存儲(chǔ):byte、short、int(默認(rèn))、long
    • 結(jié)構(gòu)
  • 引用類型
    • Class 類
    • Interface 接口
    • Dynamic
    • Object 超級(jí)父類
    • String 字符串
    • Delegate 委托
    • Array 數(shù)組
  • 指針類型

   數(shù)據(jù)類型默認(rèn)值

  • 數(shù)值數(shù)據(jù):0
  • Boolean:false
  • Char:?jiǎn)蝹€(gè)空字符
  • DateTime和TimeSpan:1/1/0001 12:00:00 AM
  • Numerics:0
  • 引用類型:null

可空類型

用于表示沒有值的數(shù)值數(shù)據(jù),在實(shí)際類型的值上加上null,這種語法只對(duì)值類型是合法的,語法是只要在值類型關(guān)鍵字上加?后綴。例如:int? nullableInt = 0;

內(nèi)存分配

值類型的變量是分配在棧上,當(dāng)變量離開定義域范圍就會(huì)被內(nèi)存移除。

引用類型變量則是分配在堆上進(jìn)行托管,有垃圾回收機(jī)制控制。

復(fù)制

  • 淺復(fù)制

     當(dāng)ValueType中包含引用類型時(shí),生成2個(gè)獨(dú)立的ValueType的值,但其中的引用類型將生成一個(gè)引用的副本,即指向內(nèi)存中的同一個(gè)對(duì)象的引用,改變其中一個(gè)的值,另一個(gè)也會(huì)隨之改變。

  • 深復(fù)制

     將內(nèi)部引用的狀態(tài)完全復(fù)制到一個(gè)新對(duì)象中,需要實(shí)現(xiàn)ICloneable接口。

賦值操作

值類型賦值是復(fù)制一份副本,2個(gè)變量是獨(dú)立操作的。

引用類型賦值是2個(gè)變量是指向托管堆中的同一個(gè)對(duì)象,改變其中一個(gè)變量的值,另一個(gè)也會(huì)改變。

值類型中包含引用類型時(shí)賦值是默認(rèn)為淺復(fù)制。

傳遞

  • 值類型
    • 按值傳遞

     傳遞變量的一個(gè)數(shù)據(jù)副本。

  • 引用類型
    • 按值傳遞     復(fù)制了指向調(diào)用者對(duì)象的引用,可以改變對(duì)象的狀態(tài)數(shù)據(jù),但是不能引用重新賦值一個(gè)新對(duì)象
    • 按引用傳遞     可以改變對(duì)象的狀態(tài)數(shù)據(jù),也可以改變引用在內(nèi)存中的指向,把引用重新賦值一個(gè)新的對(duì)象

類型轉(zhuǎn)換

  • 隱式轉(zhuǎn)換
    • 寬化

     隱式向上轉(zhuǎn)換,從值范圍小的類型向值范圍大的類型轉(zhuǎn)換,不會(huì)丟失數(shù)據(jù)。

  • 顯示轉(zhuǎn)換
    • 強(qiáng)制類型轉(zhuǎn)換
    • 窄化

     顯示向下轉(zhuǎn)換,從值范圍大的類型向值范圍小的類型轉(zhuǎn)換

  • 溢出檢測(cè)(默認(rèn)不檢測(cè))
    • 代碼級(jí)檢測(cè)
      • unchecked
      • checked

    • 項(xiàng)目級(jí)檢測(cè)
      • VS->項(xiàng)目屬性->生成->高級(jí)->檢測(cè)運(yùn)算上下溢
  • Convert命令

     可進(jìn)行顯示的寬化、窄化、字符串解析數(shù)值等操作

  • 自定義類型轉(zhuǎn)換

使用關(guān)鍵字explicit和implicit自定義類型轉(zhuǎn)換。implicit隱式轉(zhuǎn)換運(yùn)算符更容易使用,但是如果您希望運(yùn)算符的用戶能夠意識(shí)到正在進(jìn)行轉(zhuǎn)換,則顯式運(yùn)算符很有用。


分享標(biāo)題:.NET數(shù)據(jù)類型概述
網(wǎng)頁(yè)URL:http://www.dlmjj.cn/article/coocgcc.html