文档详情

第02章C#数据类型c#详解.ppt

发布:2017-01-14约1.15万字共59页下载文档
文本预览下载声明
第2章 数据类型与流程控制 2.1 C#语言概述 2.2 C#数据类型 2.3 C#流程控制语句 本章教学目的 学习C#数据类型、流程控制语句,为实际应用打基础。 本章教学要求 (1)掌握C#常用数据类型的格式及声明方法; (2)掌握C#流程控制语句的格式及基本编程方法; (3)掌握VS2005控制台应用程序的编写、调试方法; (4)了解不常用的数据类型; (5)了解C#与其他语言的比较。 2.1 C#语言概述 在C++和Java的基础上设计的,语法和C++、Java语言都比较相似。 完全面向对象。 面向组件 (component-oriented):自包含、自描述。通过属性 (property)、方法 (method) 和事件 (event) 来提供编程模型;并提供了关于组件的声明性信息的特性 (attribute);而且这些内容可以通过代码直接编写。 2.2 C#数据类型 分为两类:值类型和引用类型。 值类型: 包括基本类型、枚举类型、结构类型。 引用类型: 包括类、接口、数组、委托。 一般把引用类型的变量称为对象。 值类型和引用类型的区别 2.2.1 值类型 值类型包括整型、浮点型、小数型、布尔型、字符型、结构型、枚举型。 声明一个值类型的语法形式为: 数据类型名 变量名[ = n]; 例如: int a = 100; //声明一个整型变量a,并赋初值为100; 注意,C#不允许引用未初始化的变量。 1.整型 C#提供了九种整型: sbyte:1字节有符号 byte: 1字节无符号 short: 2字节有符号 ushort:2字节无符号 int: 4字节有符号,最常用 uint: 4字节无符号 long: 8字节有符号 ulong:8 字节无符号 char:2字节,单个Unicode字符编码,常用,例如:1 2.浮点类型 3.小数型(不常用) 即decimal类型,共占16个字节(128个二进制位),具有28至29位十进制有效数字。尾数位数多,因此可以达到很高的精度,阶码位数少,所以范围并不大。 适用于金融、货币等需要高精度数值的领域。其类型指定符为M(或m)。例如: decimal myMoney = 300.5m; decimal y = 9999999999999999999999999m; decimal x = 123.123456789123456789m; 4.布尔型 用bool表示,bool类型只有两个值true和false。 例如: bool isExist = false; bool b = (i0 i10); 注意 if(i) j += 10; //错误 if(j = 15) j += 10; //错误 5.字符型 char型,为单个Unicode字符,字符型常量必须用单引号引起来 。 如果是字符串(单个字符的组合),对应的类型为string。string类型的常量用双引号将字符串引起来。 char和string类型的常量均可以使用转义符。 6.结构型 结构是值类型 凡是使用结构实现的功能,均可以用类实现。 声明struct类型的语法形式为: [附加声明] [访问修饰符] struct 结构名称[: 实现的接口] 结构体[;] 结构类型不支持用户指定的继承,所有结构类型都隐式地从类型 object 继承。 结构对于具有值语义的小型的数据结构特别有用。复数、坐标系中的点或字典中的“键-值”对都是结构的典型示例。对小型数据结构而言,使用结构而不使用类会大大节省应用程序分配的内存量。 例如,下面的程序创建并初始化一个含有 100 个点的数组。对于作为类实现的 Point,出现了 101 个实例对象,其中,数组需要一个,它的 100 个元素每个都需要一个。 class Point { public int x, y; public Point(int x, int y) { this.x = x; this.y = y; } } class Test { static void Main() { Point[] points = new Point[100]; for (int i = 0; i 100; i++) points[i] = new Point(i, i);
显示全部
相似文档