频道栏目
首页 > 资讯 > C# > 正文

C# 基本数据类型讲解

17-12-12        来源:[db:作者]  
收藏   我要投稿

首先要了解一点:C#认可的基础数据类型并没有内置于C#语言中,而是内置于.net Framework中。

如,在c#中声明一个int类型的数据时,声明的实际上是.net结构System.Int32的一个实例。这听起来似乎很深奥,但其意义深远:这表示在语法上,可以把所有的基础数据类型看作是支持某些方法的类。

类型实际上仍存储为基本类型。基本类型在概念上用.Net结构表示,所以肯定没有性能损失。

下面大家一起来了解一下C#中定义的内置类型,我们将列出每个类型,以及它们的定义和对应的.net类型(CTS类型)的名称。

c#有15个预定义类型,其中13个是值类型,两个是引用类型(string 和 object)

1、整型

2、浮点类型

float数据类型用于较小的浮点数,因为它要求的精度较低。

double数据类型比float数据类型大,提供的精度也大一倍(15位)。

如果在代码中没有对某个非整数值(如12.3)硬编码,则编译器一般假定该变量是double。

如果想指定该值为float,可以在其后加上字符F(或f),如:

float f = 12.3F;

3、decimal类型

decimal类型专门用于进行财务计算,使用decimal类型提供的28位的方式取决于用户。

要把数字指定为decimal类型,可以在数字的后面加上字符M或(m),如:

decimal d=12.30M;

4、bool(布尔)类型

5、char字符类型

char类型的字变量是用单引号括起来的。 如'A'

如果把字符把在"A"(双引号)内,编译器会把它看作是字符串,从而产生错误。

6、引用类型(Object类型和字符串类型)

三、如何声明变量和赋值?

1、变量的定义:是指在程序的运行过程中随时可以发生变化的量

2、上面我们提到,变量在运行时当中是存在内存当中的,它是一个临时的存放场所。

那么在内存当中,可以存放如数字、字符串、日期等等各种类型的数据。

大家可以看一看这张图,它就把表示内存当中的一个状态。

简单的来说,变量就是表示内存当中的一块存储区域。

它会对应一个唯一的内存地址,但是我们在使用程序当时候,内存地址不好理解也不好记忆。

那么怎么办呢?

在日常生活当中我们都有一个名字,如"张三“、”李四“等,这些名字就是为了便于记忆。

那么同样,在程序当中,为了区别多个变量,那就需要为每个变量赋值一个简短,便于记忆的名字,

这就是变量名。

3、C#中的变量的命名是是有规则的:

1)、由字母、数字或下划线"_"组成

2)、必须由字母或下划线"_"开头,不能以数字开头

3)、不能是c#中的关键字 如:int、string、bool、Main、class等

4)、区分大小写 如:小写的a 和 大写的A 是两个变量

4、做为一个比较好的学习者,就必须遵守一些变量命名规范:

1)、变量的名字要有意义,尽量用对应的英语命名,具有“见名知意“的作用。

如:姓名 变量取名为 name或者 用拼单 xingMing,避免用a,b,c来进行命名。

2)、避免使用单个字符作为变量名( 除在循环里面定的变量)

3)、当使用多个单词组成变量名时,应该使用骆驼(Camel)命名法

骆驼(Camel)命名法:第一个单词的首字母小写,其它单词的首字母大写,如:myName,myAge

选择题:以下变量命名正确的是( )

A、name、 _222*1、 9class、 public

B、_teacher、 void、 string、 myName

C、$Age、 corss、 fire、 _grade

D、_glass、 g23、 c_12、 my_first_2

5、变量的声明和赋值

1)定义变量的语法:

数据类型变量名; (定义一个年龄的变量,年龄是整数,所以变量定义如下:)

int age; [系统会根据数据类型,在内存中分配不同大小的存储空间]

每个数据类型后面,可以定义多个变量,如:(定义姓名、家庭地址、籍贯、民族)

string name,address,origin,national ;

2)为变量赋值语法:

变量名=值;

(这里的=号表示赋值运算符,把=号右边的值,赋值给左边的变量名,最后以一个;[分号]结束)

如:年龄18岁,姓名为“小张",家庭地址为“重庆南坪XXX",

籍贯为“重庆",民族为“汉"

age=18;

name= "小张";

address= "重庆南坪XXX";

origin= "重庆";

national= "汉";

四、变量和常量的区别

变量:是指在程序的运行过程中随时可以发生变化的量

常量:是指在程序在运行过程中不会发生变化的变量

常量的特点:

1、必须在声明是赋值

2、不能在在程序运行时,给常量赋值

3、常量是静态的。不必须(实际上,是不允许)在常量声明中包含修饰符static

五、不同数据类型之间是如何转换的

在C#中数据类型转换分为两种:1)隐式[又叫自动]类型转换 2)显式[又叫强制]类型转换

举个简单例子:

飞机场里面停飞机,这是理所当然,我们把这种叫做隐式[又叫自动]类型转换

那如果我们反过来看一看,飞机里面装飞机场,这个在我们实际生活中,觉得这是根据不可能的,

但是程序可能做到这一点,我们把这种叫做显式[又叫强制]类型转换

在C#中数据类型转换分为两种:1)隐式[又叫自动]类型转换 2)显式[又叫强制]类型转换

举个简单例子:

飞机场里面停飞机,这是理所当然,我们把这种叫做隐式[又叫自动]类型转换

那如果我们反过来看一看,飞机里面装飞机场,这个在我们实际生活中,觉得这是根据不可能的,

但是程序可以做到这一点,我们把这种叫做显式[又叫强制]类型转换

double和int之间就是(飞机场与飞机)这种关系,我们可以这样理解,double的取值范围比int要大得多

所以double可以装得下int:

int a=1234;

double b=a; 系统会把a整型变量的值赋值给double变量b.这就是隐式[又叫自动]类型转换

那反过来:

double a=1234;

int b=a; //系统编译时会报错,如图:

那如何进行强制转换呢?c#提供了非常简便的方法,如:

double a=1234;

intb=(int)a;//这样就强制把double类型,转换为int类型

最后,再介绍一下,其它数据类型之间的转换(1、字符串转换为其它类型2、任意类型之间的转换)

1)、字符串转换为其它类型

语法:

XX.Parse(字符串); 这里的xx代表的如:double,int,bool等

举个例子来说明一下:

string strValue="123.45";//这是一个字符串,时面的值是"123.45"

现要把它转换成小数类型,就可以使用double.Parse();来进行转换

double dValue=double.Parse(strValue);

2)、任意类型之间的转换

语法:

Convert.ToXX(任何类型);

如:把一个布尔类型转换为整型

bool a = true;

int b =Convert.ToInt16(a);

Console.WriteLine("转换后的结果是:"+b); //转换后的结果是:1

相关TAG标签
上一篇:腾讯天美《绝地求生》手游实机演示
下一篇:苹果证实收购音乐识别软件Shazam 识别歌曲名称
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站