第6章其它常用数据类型.ppt

上传人:本田雅阁 文档编号:3431625 上传时间:2019-08-24 格式:PPT 页数:27 大小:342.04KB
返回 下载 相关 举报
第6章其它常用数据类型.ppt_第1页
第1页 / 共27页
第6章其它常用数据类型.ppt_第2页
第2页 / 共27页
第6章其它常用数据类型.ppt_第3页
第3页 / 共27页
第6章其它常用数据类型.ppt_第4页
第4页 / 共27页
第6章其它常用数据类型.ppt_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《第6章其它常用数据类型.ppt》由会员分享,可在线阅读,更多相关《第6章其它常用数据类型.ppt(27页珍藏版)》请在三一文库上搜索。

1、1/27,第6章 其它常用数据类型,本章要点: 字符串类型的定义与使用 枚举类型的定义与使用 委托类型的定义与使用 装箱与拆箱的概念,2/27,6.1 循序渐进学理论,6.1.1 字符串类型 1字符串的种类及其定义 (1)规则字符串 格式:string 字符串变量名=字符串初值; (2)逐字字符串 逐字字符串由字符后跟双引号括起来的零个或多个字符组成。 格式:string 字符串变量名=字符串初值;,3/27,规则字符串中可以使用的转义字符,4/27,【例6-1】观察下列程序的执行结果。 程序代码 using System; class A_6_1 public static void Mai

2、n() string str1=“你是“王三“?“; /“”是转义字符 string str2=“星期一星期二星期三“; /“”是转义字符,5/27,string str3=“你好!t王三。“; /“t”是转义字符 string str4=“你好t王三?“; /t并不看成转义字符,而是看成两个字符 string str5=“星期一星期二星期三“; / 也不是转义字符,而是看成两个“” Console.WriteLine(“str1=0,str2=1,str3=2“,str1,str2,str3); Console.WriteLine(“str3=0,str4=1“,str4,str5); ,6

3、/27,执行结果,7/27,2字符串类型的使用,8/27,【例6-3】 编写一个Windows应用程序,程序的设计界面如图6-1所示,程序的运行界面如图6-2所示。程序执行时在第一个文本框中输入一个字符串,然后按【倒置】按钮将把输入的字符串反序显示在第二个文本框中。,9/27,图6-1 程序设计界面,图6-2 程序运行界面,10/27,3字符串中单个字符的访问,例如,有以下语句: string str1=“I am a teacher.“/定义一个字符串并赋初值 char c;/定义一个字符变量 c=str10;/给字符变量赋一个字符,该字符为str1字符串的第一个字符 语句执行后,字符变量c

4、的值为I。,11/27,【例6-4】 编写一个程序,用来统计用户输入的字符串中字母个数、数字个数和其它字符个数。程序的设计界面如图6-3所示,程序的运行界面如图6-4所示。,12/27,图6-3 程序设计界面,图6-4 程序运行界面,13/27,6.1.2 结构类型,在C+和C#中,结构类型是对同一类具有某些特定属性和功能的对象的抽象定义,其定义中可以包括构造函数、析构函数、成员变量、成员函数、成员属性等等,同C#中的类类型基本相同。 但结构类型与类类型毕竟是两种不同的类型,主要不同点体现在以下两个方面。 (1)存储值的不同 结构类型是值类型,而类类型是引用类型。,14/27,(2)参数传递不

5、同,格式:struct 结构型名 成员声明; 例如: struct student public string name; public int age; ,15/27,实际上程序中使用的不是结构型,而是根据结构型声明的结构型变量,根据结构型声明结构型变量的格式如下。 格式:结构型名 结构型变量名; 例如有以下语句: student stu; 就是创建了一个名为stu的结构型变量。 在程序中经常需要访问结构型变量的成员,访问方法如下。 结构型变量名.成员名; 如要给stu的age成员赋值15,可使用如下语句: stu.age=15;,16/27,【例6-5】 编程实现从键盘上输入一个学生的学号

6、、姓名和年龄,然后输出刚刚输入的学生学号、姓名和年龄。,17/27,6.1.3 枚举类型,格式:枚举修饰符 enum 枚举类型名 枚举常量1,枚举常量2,枚举常量n; 定义枚举变量的语句格式如下: 枚举类型名 变量名; 如果希望让枚举型常量的值是其它类型的,可在定义枚举型时指定,定义格式与如下。 格式:枚举修饰符 enum 枚举类型名 : 类型说明符 枚举常量1,枚举常量2,枚举常量n;,18/27,【例6-6】 定义一个职称枚举类型,输出枚举类型中所有枚举常量的值。,19/27,6.1.4 委托类型,一个委托声明定义了一个从类System.Delegate延伸的类。一个委托实例封装一个方法及

7、可调用的实体。在声明委托时只需要指定委托指向的函数原型的类型,它不能有返回值也不能带有输出类型的参数。委托类型的定义格式如下。 格式:delegate 数据类型说明符 委托类型名(); 例如,若要声明一个指向double类型函数原型的委托类型,可使用如下语句: delegate double MyDelegate();,20/27,委托既可以封装一个静态方法也可以封装一个非静态的方法。委托的使用方法,一般分为二步: (1)定义一个委托类型的实例变量,让该实例变量指向某一个具体的方法。其一般格式如下。 格式:委托类型名 委托变量名=new 委托类型名(方法名); (2)调用委托类型变量指向的方法

8、。其一般格式如下。 格式:委托变量名(实参列表);,21/27,6.1.5 装箱与拆箱,1装箱 所谓装箱就是将一个值类型隐式地转换成一个object类型或一个被该值类型应用的接口类型。装箱的方法是:创建一个object实例并将值复制给这个object实例。例如: double f=23.0; object obj=f; 也可以用显式的方法来进行装箱操作,语句如下: double f=23.0; object obj=(object)f;,22/27,2拆箱,拆箱是装箱的反操作。所谓拆箱就是将一个对象类型显式地转换成一个值类型,或将一个接口类型显式地转换成一个执行该接口的值类型。例如: doub

9、le f=23.0; object obj=f; double k=(double)obj;,23/27,6.2 典型实例练能力,6.2.1 典型实例一:回文字符串的判定 【实例题目】 编写一个应用程序,用来判断用户输入的字符串是否为回文,所谓回文就是正读和反读均一样的字符串。如“abcddcba”、“我是兵兵是我”均是回文,而“abcdefgh”则不是回文。程序的设计界面如图6-5所示,程序的运行界面如图6-6所示。,24/27,图6-5 程序设计界面,图6-6 程序运行界面,25/27,26/27,6.3 上机练习重应用,6.3.1 上机练习一:从字符串中分离出数字字符 【练习题目】 编写一个程序,把在一个文本框中输入的字符串中的数字字符分离出来,然后显示在另一个文本框中。程序的设计界面如图6-8所示,程序的运行界面如图6-9所示。,27/27,图6-8 程序设计界面,图6-9 程序运行界面,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1