栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > .Net

C#的数据类型与方法

.Net 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C#的数据类型与方法

      在学习C#时,在有一定编程基础的情况下,你会发现C#里有很多知识点与其他编程语言有着相似的地方。

      C#的数据类型有7种,分别是 值类型 ,引用类型 ,整型(默认为int), 浮点型(默认为double) ,字符型(char) ,布尔类型 ,字符串类型 。

      下面我们一个个的去了解C#的数据类型的内容。

1.值类型

      值类型包含以下几种类型: 整型 ,浮点型 ,字符型 ,布尔型 ,枚举型。

值类型的存储

      从内存存储空间的角度而言,值类型的值是存放到栈中的,每次存取值都会在该内存中操作;

2.引用类型

      引用类型包含以下几种类型: 类,接口 ,数组 ,委托 ,字符串 。


引用类型的存储

      引用类型首先会在栈中创建一个引用变量,然后在堆中创建对象本身,再把这个对象所在内存的首地址赋给引用变量。

3.整型(默认为int)
     

      所谓整型就是存储整数的类型,按照存储值的范围不同,C# 语言将整型分成了 byte 类型、short 类型、int 类型、long 类型等,并分别定义了有符号数和无符号数。

      有符号数可以表示负数,无符号数仅能表示正数。

具体的整数类型及其表示范围如下表所示。
 

类 型

取值范围

sbyte

有符号数,占用1个字节,-27〜27-1

byte

无符号数,占用1个字节,0〜28-1

short

有符号数,占用2个字节,-215〜215-1

ushort

无符号数,占用2个字节,0〜216-1

int

有符号数,占用4个字节,-231〜231-1

uint

无符号数,占用4个字节,0〜232-1

long

有符号数,占用8个字节,-263〜263-1

ulong

无符号数,占用8个字节,0〜264-1


从上面的表中可以看出 short、int 和 long 类型所对应的无符号数类型都是在其类型名称前面加上了 u 字符,只有 byte 类型比较特殊,它存储一个无符号数,其对应的有符号 数则是 sbyte。

此外,在 C# 语言中默认的整型是 int 类型。
 

4.浮点型(默认为double)

      浮点型浮点型是指小数类型,浮点型在 C# 语言中共有两种,一种称为单精度浮点型,一种称为双精度浮点型。


    两种类型
        单精度浮点型(float)
         

关于浮点型的具体说明如下表所示。
 

类 型

取值范围

float

单精度浮点型,占用4个字节,最多保留7位小数

double

双精度浮点型,占用8个字节,最多保留16位小数


    在 C# 语言中默认的浮点型是 double 类型。如果要使用单精度浮点型,需要在数值后 面加上 f 或 F 来表示,例如 123.45f、123.45F。
 

5.字符型(char)


    字符型 用 char 关键字表示,存放到 char 类型的字符需要使用单引号括起来,例如 'a'、'中' 等
    只能存放一个字符,它占用两个字节,能存放一个汉字。

6.布尔类型


      布尔类型在 C# 语言中,布尔类型使用 bool 来声明,它只有两个值,即 true 和 false。
      布尔类型的值也被经常用到条件判断的语句中,例如,判断某个值是否为偶数、判断某个日期 是否是工作日等。

7.字符串类型

      能存放多个字符,它是一个引用类型,在字符串类型中存放的字符数可以认为是没有限制的,因为其使用的内存大小不是固定的而是可变的。
      使用 string 关键字来存放字符串类型的数据。字符串类型的数据必须使用双引号括起来,例如 "abc"、"123" 等。

8.转义字符

      在 C# 语言中还有一些特殊的字符串,代表了不同的特殊作用。由于在声明字符串类型的数据时需要用双引号将其括起来,那么双引号就成了特殊字符,不能直接输出,转义字符的作用就是输出这个有特殊含义的字符。

转义字符非常简单,常用的转义字符如下表所示。

转义字符

等价字符

'

单引号

"

双引号

\

反斜杠

a

警告(产生蜂鸣音)

b

退格

f

换页

n

换行

r

回车

t

水平制表符

v

垂直制表符

9.量

在C#中的量分两种,分别是 变量和常量。

变量(Variable)
    变量可以理解为存放数据的容器,并且在将值存放到变量中时还要为变量指定数据类型。
    语法
        数据类型  变量名;数据类型  变量名 = 初始值; int  num ;    int num2 = 3;
        注意:
            对于未初始化的变量,其内容无法确定,所以无法进行直接输出显示,需要设置值之后再进行输出。

常量
    常量也是用来存储数据的容器,在定义时都需要指明数据类型。唯一的特点是:存放的值不允许改变。
    语法
        const  int  MODELS = 5;
        常量需要使用关键字const进行修饰。常量一般全部使用大写。

10.运算符

(1)算术运算符

注意:
        算术运算符算术运算符是最常用的一类运算符,包括加法、减法、乘法、除法等。
        当对两个字符串类型的值使用 + 运算符,代表的是两个字符串值的连接,

                           例如 "123"+"456" 的结果为 "23456" 。


        当使用 / 运算符时也要注意操作数的数据类型,如果两个操作数的数据类型都为整数,那么结果相当于取整运算,不包括余数;而两个操作数中如果有一个操作数的数据类型为浮点数,那么结果则是正常的除法运算。
        当使用 % 运算符时,如果两个操作都为整数,那么结果相当于取余数。经常使用该运算符来判断某个数是否能被其他的数整除。
    运算符
        +    对两个操作数做加法运算
        -    对两个操作数做减法运算
        /    对两个操作数做除法运算
        *    对两个操作数做乘法运算
        %   对两个操作数做取余运算

(2)关系运算符

注意:
        关系运算符在条件判断中经常使用的一类运算符,包括大于、小于、不等于、大于等于、小于等于等符号。
        关系运算符比较的返回结果是一个bool类型的值。
    运算符
        ==    表示两边表达式运算的结果相等,注意是两个等号
        !=    表示两边表达式运算的结果不相等
        >   表示左边表达式的值大于右边表达式的值
        <   表示左边表达式的值小于右边表达式的值
        >=   表示左边表达式的值大于等于右边表达式的值
        <=   表示左边表达式的值小于等于右边表达式的值

(3)逻辑运算符
    注意:
        逻辑运算符主要包括与、或、非等,它主要用于多个布尔型表达式之间的运算。
    运算符
        &&   如果运算符两边都为 True,则整个表达式为 True,否则为 False;如果左边操作数为 False,则不对右边表达式进行计算,相当于“且”的含义
        ||   如果运算符两边有一个或两个为 True,整个表达式为 True,否则为 False;如果左边为 True,则不对右边表达式进行计算,相当于“或”的含义
        !   表示和原来的逻辑相反的逻辑
        逻辑
            &&   逻辑与
            ||      逻辑或
            !       逻辑非

(4)位运算符

注意:
        位运算,通常是指将数值型的值从十进制转换成二进制后的运算,由于是对二进制数进行运算,所以使用位运算符对操作数进行运算的速度稍快。
        位运算包括与(&)、或( | )、 非( ~ )、左移、右移等。
    运算符
        &
            按位与。两个运算数都为 1,则整个表达式为 1,否则为 0;也可以对布尔型的值进行比较,相当于“与”运算,但不是短路运算


        |
            按位或。两个运算数都为 0,则整个表达式为 0,否则为 1;也可以对布尔型的值进行比较,相当于“或”运算,但不是短路运算


        ~
            按位非。当被运算的值为 1 时,运算结果为 0;当被运算的值为 0 时,运算结果为 1。该操作符不能用于布尔型。对正整数取反,则在原来的数上加 1,然后取负数;对负整数取反,则在原来的数上加 1,然后取绝对值


        ^
            按位异或。只有运算的两位不同结果才为 1,否则为 0


        <<
            左移。把运算符左边的操作数向左移动运算符右边指定的位数,右边因移动空出的部分 补


        >>
            有符号右移。把运算符左边的操作数向右移动运算符右边指定的位数。如果是正值,左侧因移动空出的部分补 0;如果是负值,左侧因移动空出的部分补 1


        >>>
            无符号右移。和 >> 的移动方式一样,只是不管正负,因移动空出的部分都补 0

(5)赋值运算符

注意:        

赋值运算符中最常见的是等号,除了等号以外还有很多赋值运算符,它们通常都是与其他运算符连用起到简化操作的作用。
    运算符
        =
            x=y,等号右边的值给等号左边的变量,即把变量 y 的值赋给变量 x


        +=
            x+=y,等同于 x=x+y


        -=
            x-=y,等同于 x=x-y


        *=
            x*=y,等同于 x=x*y


        /=
            x/=y,等同于 x=x/y


        %=
             x%=y,等同于 x=x%y,表示求 x 除以 y 的余数


        ++
            x++ 或 ++x,等同于 x=x+1


        --
            x-- 或 --x,等同于 x=x-1

(6)特殊运算符

注意:
 
        特殊运算符包含自增运算符,自减运算符和条件运算符。
    运算符
        ++
            x++ 或 ++x,等同于 x=x+1


        --
            x-- 或 --x,等同于 x=x-1


        ?:
            布尔表达式 ? 表达式 1: 表达式 2

(7)运算符优先级

注意:
        在表达式中使用多个运算符进行计算时,运算符的运算是有先后顺序的,所以定义了运算符之间的优先级,来判断哪些操作优先计算。
        结合性是指具有相同优先级的多个运算符同时存在时,系统执行计算时的方向。
    运算符
        结合性
            从左到右
                .(点)、()(小括号)、[](中括号)
                * (乘)、/ (除)、% (取余)
                + (加)、-(减)
                <<、>>、>>> 
                <、<=、>、>= 
                ==、!= 
                &
                |
                ^
                &&
                ||
            从右到左
                + (正)、-(负)、++ (自增)、--(自减)、~(按位非)、!(逻辑非)
                ?:
                =、+=、-=、*=、/=、%=、&=、|=、^=、~=、<<=、>>=、>>>= 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1023503.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号