手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

C# 预定义值类型和引用类型详解

时间:2025-01-04 19:22:01

C#语言预定义了值类型和引用类型。在一些面试题中,通常会问到值类型和引用类型的区别。我们知道值类型和引用类型存储在不同的地方。值类型存储在堆栈(Stack)中,而引用类型存储在托管堆(managed heap)上。本文根据值类型和引用类型不同,和大家介绍下值类型和引用类型的预定义类型。

工具/原料

C#

预定义的值类型

1、1.整型。C#支持8中预定的整数类型。分别是sbyte、short、int、long、byte、ushort、uint、ulong。byte0-255得标准的8位整数类型。默认是无符号的,有符号的为sbyte。

C# 预定义值类型和引用类型详解

2、2.浮点类型。C#的浮点类型有两种,分别是float(32为单精度浮点数)、double(64位双精度浮点数)。float类型用于较小的浮点值。double类型比float类型大,提供的精度也大一倍。

C# 预定义值类型和引用类型详解

3、3.decimal类型。decimal类型表示更高精度的浮点数。decimal类型常用于财务计算。可以用字母M来区分。如下:decimal d=1.2M。

C# 预定义值类型和引用类型详解

4、4.bool类型。C#bool类型包含布尔值true或false。布尔值和整数值不能相互隐式转换。如果变量声明为布尔值时,就只能用true或false,不能用0或1表示,否则会报错。

C# 预定义值类型和引用类型详解

5、5字符类型。C#支持插char类型,用来保存单个字符。char类型的字面量是单引号括起来的。如 ‘A’如果字符放在单引号中,编译器就会把它识别为string类型,变成引用类型。

C# 预定义值类型和引用类型详解

预定义的引用类型

1、object类型。C#支持两种预定义引用类型。一种是object类型,一种是string类型。object类型是最终的父类型,所有的内置类型和用户定义的类型都是从它派生而来。

C# 预定义值类型和引用类型详解

2、string类型。C#有string关键字,string类型被分配至堆上,而不是栈上。当我们给一个字符串变量赋值时,会得到对内存中同一个字符串的两个引用。但是string与引用类型的一些行为有些不同。字符串是不可变的,当你修改其中一个字符串的时候,它就会创建一个新的string对象,而另一个字符串不会发生任何变化。

C# 预定义值类型和引用类型详解
© 手抄报圈