自学笔记二:C#语法基础 数据类型之值类型

来源:互联网 发布:windows 更改用户账户 编辑:程序博客网 时间:2024/06/05 16:37

在C#中,符合公共语言规范的数据类型可分成2类:值类型和引用类型

值类型保护简单值类型和复合值类型。最简单值类型可以再细分为整数类型、字符类型、实数类型和布尔类型;而复合值类型则是简单值类型的复合,它包括结构(struct)类型和枚举(enum)类型。

示例:


1、整数类型

sbyte  有符号8位整数

byte    无符号8位整数

short  有符号16位整数

unshort 无符号16位整数

int 有符号32位整数

uint 无符号32位整数

long 有符号64位整数

ulnong 无符号64位整数

2、字符类型

字符是计算机文字信息处理的基本单位,它包括单个字母、数字、标点符号以及特殊的控制字符。

对字符型变量的申明和赋值很简单,如:

char x='a';

注意,表示字符时要用单引号括起来,而如果用了双引号,C#编译器则认为它是字符串(string)类型。

3、实数类型

C#提供3种类型:单精度类型(float)、双精度类型(double)和十进制小数类型(decimal)

采用默认的小数格式书写实数的是double类型。要申明float和decimal类型,还需要在小数后面加上后缀F和M,如:

double x=1.2;

float y=1.2F;

decimal z=1.2M;

4、布尔类型

布尔类型(bool)表示布尔逻辑,取值只能是true或false;分别表示真和假;

申明实例:bool b1=true; bool b2=false;

5、结构类型

实际生活中的对象通常更为复杂,很难用一个简单类型就能把它描述清楚,而是需要用多个简单值类型的组合,比如,通讯录中记录的每一个联系人可以包含项目、电话和地址等内容,把一系列相关的信息组织成为一个单一的实体的过程,就是创建一个结构的过程,结构类型采用关键字struct进行定义,其中可以包含0个或者任意多个成员的定义。例如,对联系人结构Contact的定义:


struct Contact

{

string m_name;

int m_age;

string m_telephone;

public struct Address

{

  public  string m_city;

  public string m_street;

  public int m_number;

}

public Address m_address;

}


使用该结构要申明一个Contact类型的变量:

public Contact c1; //为结构的成员添加public修饰符 才能访问它的成员

这里c1就表示一个Contact的结构类型的变量。 

c1.m_address.m_city;//对结构成员的访问可以通过圆点链接符“.”进行。

注意:结构类型包含的成员类型是没有限制的,可以使简单值类型,也可以是结构类型和枚举类型,还可以使各种引用类型。

6、枚举类型

枚举类型是另一种复合类型,和结构类型不同的是,枚举类型要求成员只能是整数类型。枚举类型主要用于表示一组逻辑上相关联的项的组合,使用关键字enum来定义,例如:可以定义一个代表星期的枚举类型Weekday,其中成员分布表示星期日~星期六;

enum Weekday{ sunday,monday,tuesday, wednessday,thursday,friday, saturday}

特别需要注意的是:结构类型是由一组不同类型的成员所组成的新的数据类型,结构类型的变量包含了所有成员的值;而枚举类型只是列举出各个成员,枚举类型的变量在某一时刻只能去其中某个成员的值。例如:Weekday类型的变量用于日期的星期表示,在一个时刻只能代表一个星期中的某一天(如星期二),而不能同时既是星期二又是星期三,对枚举成员的访问同样采用圆点符号“.”进行,只不过不是通过枚举类型的变量,而是通过枚举类型的名称。

Weekday w1;

w1=Weekday.monday;


如果不指定,那么C#编译器默认枚举中的第一个元素对于的整数值为0;其后面每个元素的值依次递增1,当然也可以再定义枚举时直接指定元素的整数值,比如把星期天的值设为1,则气候的元素依次为2到7

enum Weekday{ sunday=1,monday,tuesday, wednessday,thursday,friday, saturday}

有趣的是,为枚举类型的变量赋值可以不限定在范围之内,如下面的语句也是合法的:

w1=(Weekday) 200;


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 左肾泥沙样结石怎么办 双肾泥沙样结石怎么办 温州市民卡丢了怎么办 上眼皮过敏肿了怎么办 上眼皮又痒又肿怎么办 上眼皮红肿痛是怎么办 上眼皮肿的厉害怎么办 眼皮肿了还痒痒怎么办 眼睛被手指戳到怎么办 打球眼睛撞肿了怎么办 打球时眼睛被戳怎么办 狗眼睛被打充血怎么办 一只眼睛磨的慌怎么办 5个月宝宝结膜炎怎么办 金毛眼屎多白色怎么办 金毛眼红有眼屎怎么办 狗狗眼睛上火了怎么办 狗上火了眼屎多怎么办 金毛走路扭腰怎么办 金毛流鼻涕微黄怎么办 狗狗下眼皮红了怎么办 金毛眼睛打肿了怎么办 金毛的眼睛红怎么办 眼睛干涩有红血丝怎么办 小孩子眼睛红有眼屎怎么办 狗狗的肉垫粗糙怎么办 狗狗眼睛变蓝色怎么办 脸被太阳晒伤了怎么办 皮肤晒伤红肿痒怎么办 3岁儿童频繁眨眼怎么办 狗狗的眼睛红肿怎么办 脸过敏发红怎么办不痒 上眼皮红肿痒是怎么办 眼睛痒了几天了怎么办 眼睛肿了还痒怎么办 孩子脸上有红血丝怎么办 脸上长了红血丝怎么办 指甲受创出血了怎么办 手指被挤压紫了怎么办 眼睛撞了有淤血怎么办 下眼底有小白点怎么办