2.1 C#基本数据类型
2017-04-06 00:18
513 查看
2.1 C#基本数据类型
2.2 常量和变量
2.3 表达式和运算符
2.4 选择语句
2.5 循环语句
2.6 跳转语句
2.7 数组
C#中数据类型主要可以分为两种:值类型和引用类型(不包含自定义类型)。 值类型:直接存储值;引用类型:存储的是对值的引用。
首先要了解一点:C#认可的基础数据类型并没有内置于C#语言中,而是内置于.net Framework中。
如,在c#中声明一个int类型的数据时,声明的实际上是.net结构System.Int32的一个实例。这听起来似乎很深奥,但其意义深远:这表示在语法上,可以把所有的基础数据类型看作是支持某些方法的类。类型实际上仍存储为基本类型。基本类型在概念上用.Net结构表示,所以肯定没有性能损失。
1.值类型:
值类型直接存储数据值,主要包括简单类型和引用类型,其中简单类型主要包括整数类型、浮点类型、布尔类型和字符类型等4种。值类型在 栈 中进行分配,所以效率较高,使用值类型主要是为了提高性能。值类型具有如下特性:
值类型都是存储在栈中,值类型变量可以直接分配一个值,它们是从类System.ValueType中派生的。
访问值类型变量时,一般都是直接访问其实例。
每个值类型变量都有自己的数据副本,对一个值类型的变量操作不会影响其他的变量。
值类型不能为Null,必须是一个确定的值。
A 整数类型:
整数类型代表一种没有小数的整数数值,实际编程中注意取值范围。
B 浮点类型:
浮点类型主要用于处理含有小数的数值类型,包含float、double、decimal三种类型。
如果不做任何设置,系统默认包含小数点的数值为double类型,如果要将数值以float类型来处理,则通过强制使用f或F将其指定为float类型,强制把数值指定为double类型则在后面加d或D,如果将数据强制设置为decimal,则在后面加m或M。
C 布尔型
布尔型主要用来表示真/假、TRUE/FALSE值,一个布尔变量,其值只能是TRUE或FALSE,不能将其他的值指定给布尔类型变量,并且布尔类型的值不能与其他类型进行转换。
D 字符类型
字符类型用char/Char类来表示,定义字符变量时,只能用单引号引用。``表示一个字符,而“ ”则表示一个字符串。
特例:\ 该字符比较特殊。\ 为“转义字符”。(转义字符为特殊的字符变量,以字符\开头;转义字符后面跟一个或多个字符,具有特定含义,不同于字符原有的含义。)
bool默认值为false、byte默认值为:0、char默认值为:'\0'、decimal默认值为:0.0M、double默认值为:0.0D、float默认值为:0.0F、int默认值为0、long默认值为:0L、sbyte\short\UINT\ulong\ushort默认值为:0
2. 引用类型
引用类型不包含存储在变量中的实际数据,但包含存储对值的引用,即它们指的是一个内存位置,使用多个变量时,引用类型可以指向一个内存位置。如果内存位置室友一个变量改变的,其他变量会自动反映到这个值的变化。。
引用类型变量又称为对象,可存储对实际数据的引用。c#支持两个预定义的引用类型object和string。
object等价与System.Object,c#中System.Object 是所有类的基类。
string是特殊的引用类型,但是有个特点是其值一旦初始化后就不可改变。
字符串string类型是System.String类的别名,他是从对象Object类派生出来的,可以通过两种形式进行分配:引号和@ 引号。
如:“C#”、“Name”、string str=@“c:\windows\system32”等价于 string str、= “c:\windows\system32”
3.值类型和引用类型的区别
值类型直接存储数值,在内存空间中的栈中操作;引用类型存储的是对其值的引用,则是在堆中分配存储单元。
栈在编译的时候就分配好内存空间,在代码中有栈的明确定义;堆是程序运行中动态分配的内存空间,可以根据程序运行情况动态分配内存空间的大小。因此,值类型总是在内存中占用一个预定义的字节数,而引用类型的变量则在堆中分配一个内存空间,这个内存空间包含的是对另一个内存位置的引用,这个位置是托管堆中的地址,及存放此变量实际值的地方。
2.2 常量和变量
2.3 表达式和运算符
2.4 选择语句
2.5 循环语句
2.6 跳转语句
2.7 数组
C#中数据类型主要可以分为两种:值类型和引用类型(不包含自定义类型)。 值类型:直接存储值;引用类型:存储的是对值的引用。
首先要了解一点:C#认可的基础数据类型并没有内置于C#语言中,而是内置于.net Framework中。
如,在c#中声明一个int类型的数据时,声明的实际上是.net结构System.Int32的一个实例。这听起来似乎很深奥,但其意义深远:这表示在语法上,可以把所有的基础数据类型看作是支持某些方法的类。类型实际上仍存储为基本类型。基本类型在概念上用.Net结构表示,所以肯定没有性能损失。
1.值类型:
值类型直接存储数据值,主要包括简单类型和引用类型,其中简单类型主要包括整数类型、浮点类型、布尔类型和字符类型等4种。值类型在 栈 中进行分配,所以效率较高,使用值类型主要是为了提高性能。值类型具有如下特性:
值类型都是存储在栈中,值类型变量可以直接分配一个值,它们是从类System.ValueType中派生的。
访问值类型变量时,一般都是直接访问其实例。
每个值类型变量都有自己的数据副本,对一个值类型的变量操作不会影响其他的变量。
值类型不能为Null,必须是一个确定的值。
A 整数类型:
整数类型代表一种没有小数的整数数值,实际编程中注意取值范围。
B 浮点类型:
浮点类型主要用于处理含有小数的数值类型,包含float、double、decimal三种类型。
如果不做任何设置,系统默认包含小数点的数值为double类型,如果要将数值以float类型来处理,则通过强制使用f或F将其指定为float类型,强制把数值指定为double类型则在后面加d或D,如果将数据强制设置为decimal,则在后面加m或M。
C 布尔型
布尔型主要用来表示真/假、TRUE/FALSE值,一个布尔变量,其值只能是TRUE或FALSE,不能将其他的值指定给布尔类型变量,并且布尔类型的值不能与其他类型进行转换。
D 字符类型
字符类型用char/Char类来表示,定义字符变量时,只能用单引号引用。``表示一个字符,而“ ”则表示一个字符串。
特例:\ 该字符比较特殊。\ 为“转义字符”。(转义字符为特殊的字符变量,以字符\开头;转义字符后面跟一个或多个字符,具有特定含义,不同于字符原有的含义。)
bool默认值为false、byte默认值为:0、char默认值为:'\0'、decimal默认值为:0.0M、double默认值为:0.0D、float默认值为:0.0F、int默认值为0、long默认值为:0L、sbyte\short\UINT\ulong\ushort默认值为:0
2. 引用类型
引用类型不包含存储在变量中的实际数据,但包含存储对值的引用,即它们指的是一个内存位置,使用多个变量时,引用类型可以指向一个内存位置。如果内存位置室友一个变量改变的,其他变量会自动反映到这个值的变化。。
引用类型变量又称为对象,可存储对实际数据的引用。c#支持两个预定义的引用类型object和string。
object等价与System.Object,c#中System.Object 是所有类的基类。
string是特殊的引用类型,但是有个特点是其值一旦初始化后就不可改变。
字符串string类型是System.String类的别名,他是从对象Object类派生出来的,可以通过两种形式进行分配:引号和@ 引号。
如:“C#”、“Name”、string str=@“c:\windows\system32”等价于 string str、= “c:\windows\system32”
3.值类型和引用类型的区别
值类型直接存储数值,在内存空间中的栈中操作;引用类型存储的是对其值的引用,则是在堆中分配存储单元。
栈在编译的时候就分配好内存空间,在代码中有栈的明确定义;堆是程序运行中动态分配的内存空间,可以根据程序运行情况动态分配内存空间的大小。因此,值类型总是在内存中占用一个预定义的字节数,而引用类型的变量则在堆中分配一个内存空间,这个内存空间包含的是对另一个内存位置的引用,这个位置是托管堆中的地址,及存放此变量实际值的地方。
相关文章推荐
- 2.1 基本数据类型和值
- C# 基本数据类型
- 7月16号C#基本数据类型
- C#visual2012基本操作、数据类型、类型转换
- C#比较两个由基本数据类型构成的object类型
- 也许你不知道的c#基本数据类型及其默认值
- C#基本语法 - 基本的数据类型
- C#中的基本数据类型
- C#学习笔记第二篇之标识符、关键字、基本数据类型
- 高效掌握C#第一回---C#中的基本数据类型及其相互转换
- C#基本数据类型
- C# 基本数据类型和Byte [] 相互转换
- 浅谈C#基本数字数据类型
- C#学习笔记01:基本数据类型
- C# 语法练习(1): 基本数据类型
- C#基本数据类型
- 02 C# 第二章 数据类型 - 基本类型
- Java/C#/C/C++基本数据类型一览
- c#基本数据类型
- C#基本数据类型