ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目 教学课件 ppt 作者 杨树林 胡洁萍 ASP.NET_2

上传人:E**** 文档编号:89353657 上传时间:2019-05-23 格式:PPT 页数:84 大小:324KB
返回 下载 相关 举报
ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  杨树林 胡洁萍 ASP.NET_2_第1页
第1页 / 共84页
ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  杨树林 胡洁萍 ASP.NET_2_第2页
第2页 / 共84页
ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  杨树林 胡洁萍 ASP.NET_2_第3页
第3页 / 共84页
ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  杨树林 胡洁萍 ASP.NET_2_第4页
第4页 / 共84页
ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  杨树林 胡洁萍 ASP.NET_2_第5页
第5页 / 共84页
点击查看更多>>
资源描述

《ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目 教学课件 ppt 作者 杨树林 胡洁萍 ASP.NET_2》由会员分享,可在线阅读,更多相关《ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目 教学课件 ppt 作者 杨树林 胡洁萍 ASP.NET_2(84页珍藏版)》请在金锄头文库上搜索。

1、第二章 C#语言基础,杨树林 北京印刷学院,本章要点,编码规则、数据类型、运算符和表达式的基本知识。 字符串、日期和时间的基本知识。 分支结构、循环语句和异常处理。 类和对象的基本知识及书城网站实体模型类设计。 抽象类、接口、多态性及书城网站接口设计。 数组和集合的有关知识及书城网站购物车类设计。,2.1 C#语言的基本语法,2.1.1 基本编码规则 以字母、下划线(_)或开始的一个字符序列,后面可以跟字母、下划线、数字。 C#语言区分大小写。一般变量名首字母小写,后面各单词首字母大写;而常量、类名、方法、属性等首字母大写。 一般不能用保留字作自定义标识符。如果一定要用保留字作为自定义标识符,

2、应使用字符作为前缀。,2书写规则 每行语句以“;”结尾。 空行和缩进被忽略。 多条语句可以处于同一行,之间用分号分隔即可。 3注释 C#有三种类型的注释语句: /注释一行。 /*一行或多行注释*/。 /XML注释方式。,2.1.2 数据类型,1. 数据类型简介 C#语言的数据类型按内置和自定义划分有内置类型和构造类型。内置类型是C#中提供的、无法再分解的一种具体类型。表2-1列出了C#包含的内置类型。这些类型都有其对应的公共语言运行库类型(或称为.NET数据类型)。构造类型是在内置类型基础上构造出来的类型,主要有枚举、数组、结构、集合、类、接口和委托。,按数据的存储方式划分,有值类型和引用类型

3、,如图2-1所示。值类型在其内存空间中包含实际的数据,而引用类型中存储的是一个地址,该地址指向存储数据的内存位置。值类型的内存开销要小(在堆栈上分配内存),访问速度要快,但是缺乏面向对象的特征;引用类型的内存开销要大(在受管制的堆上分配内存),访问速度稍慢。所有的数值类型、boolean、char、枚举及结构类型都属于值类型,而数组、String、类、接口、委托都属于引用类型。,2. 基本数据类型的表示 整数的表示 十进制整数:如123,-456,0。 十六进制整数:以0x或0X开头,如0x123表示十进制数291,-0X12表示十进制数-18。 无符号整数:可以用正整数表示无符号数,也可以在

4、数字的后面加上U或u,如125U。 长整数:可以在数字的后面加上L或l,如125L。 实型数据的表示 十进制数形式:由数字和小数点组成,且必须有小数点,如:0.123, 1.23, 123.0。 科学计数法形式:如123e3或123E3。 float类型的值:在数字后加f或F,如1.23f。 double类型的值:数字后加D或d,如12.8d。 decimal类型的值:在数字后加M或m,如99.2m。,实型数据的表示 十进制数形式:由数字和小数点组成,且必须有小数点,如:0.123, 1.23, 123.0。 科学计数法形式:如123e3或123E3。 float类型的值:在数字后加f或F,如

5、1.23f。 double类型的值:数字后加D或d,如12.8d。 decimal类型的值:在数字后加M或m,如99.2m。 字符的表示 用单引号括起来的一个字符:如a,A,男。 转义字符:如x0058。 十六进制转换码:如x0058。 Unicode表示形式:如u0058。 布尔型数据的表示 只有两个值:true和false。,3. 枚举类型 枚举 (enum) 是值类型的一种特殊形式,它从System.Enum继承而来,并为基础类型的值提供替代名称。枚举类型有名称、基础类型和一组枚举值。基础类型必须是一个整数类型(如byte、int或uint)。,2.1.3 案例2-1 为书城网站定义用户

6、权限枚举类型,书城网站的用户分为管理员、会员(登录用户)及普通用户(匿名用户)。为了管理方便,设计一个枚举类型,来表示三种用户,并建立测试程序。,2.1.4 运算符和表达式,C#的运算符很丰富,按操作数的数目来分有: 一元运算符:如+,-,+,-。 二元运算符:如+,-,。 三元运算符:如?:。,基本的运算符按功能划分,有下面几类: 算术运算符:如+,-,*,/,%,+,-。 关系运算符:如,=,&,|,。 赋值运算符:=及其扩展赋值运算符,如+=,-=,*=,/=等。 条件运算符:?:。 其它运算符:包括分量运算符 ,下标运算符,实例运算符is,内存分配运算符new,强制类型转换运算符(类型

7、),方法调用运算符()等。,2.2 字符串、日期和时间,字符串(string)是System.String类型的别名,表示一个Unicode字符序列。一个字符串可存储将近20亿(231)个Unicode字符。,1字符串的建立 通过直接赋值建立字符串。例如: string str1 = “Hello“; string str2 = “C:testfirst.cs“; string str3 = “C:testfirst.cs“; /表示该字符串中的所有字符是其原来的含义 使用字符型数组建立字符串。例如: char ch = C,h,i,n,a; string str = new String(c

8、h); /值为“China“ string str1 = new String(ch,2,2); /值为“in“,2. 字符串格式化 可以使用ToString()或Format()方法将字符串格式化。格式化时需要使用格式字符串。格式字符串使用“”和“”定界,以区分其他字符。格式字符串的一般形式为: index,alignment:formatString index:从零开始的整数,指示对象列表中要格式化的元素。如果由索引指定的对象是空引用,则格式项将被空字符串(“) 替换。 alignment:可选整数,指示格式化区域的最小长度。如果格式化区域的长度小于对齐,则用空格填充该区域。如果对齐为负

9、,则格式化的值将在该区域中左对齐;如果为正,则格式化的值将右对齐。如果没有指定对齐,则该区域的长度为格式化值的长度。如果指定对齐,则需用逗号分隔。 formatString:可选的格式字符串。在格式中经常使用C、D、F、P等格式化符。有时还需要使用占位符:0和#。前者位数不够时补0;后者对整数部分,去掉数字左边的无效0,对小数部分,按照四舍五入原则处理后,再去掉右边的无效0。,3常用的字符串操作方法 比较两个字符串 String.Compare(string strA,string strB) String.Compare(string strA,string strB,bool ignore

10、Case) 查找 IndexOf(string str) LastIndexOf(string str),插入 Insert(int startIndex,string str) 删除 Remove(int startIndex,int count) 替换 Replace(string oldStr,string newStr) 分离 Split(char separator),复制到字符数组 ToCharArray() 大小写转换 ToUpper() ToLower() 去掉前后空格 TrimStart()删除字符串首部空格 TrimEnd()删除字符串尾部空格 Trim()同时删除字符串首

11、部和尾部空格,4StringBuilder类 由于String的值一旦创建就不能再修改,所以称它是恒定的。因此,像两个字符串相连(+)这样的运算实际上是返回一个包含新内容的新的String实例。显然,如果这种操作非常多,对内存的消耗是非常大的。解决这个问题的办法是使用System.Text.StringBuilder类。此类表示值为可变字符序列的类似字符串的对象。之所以说值是可变的,是因为在通过追加、移除、替换或插入字符而创建它后可以对它进行修改。使用StringBuilder类需要引用System.Text命名空间。当实例值增大时,StringBuilder可按存储字符的需要分配更多的内存,

12、同时对容量进行相应的调整。它的Append()、AppendFormat()、EnsureCapacity()、Insert()和Replace()方法能增大实例的值。通过Chars属性可以访问StringBuilder的值中的单个字符,索引位置从零开始。,2.2.2 DateTime和TimeSpan,DateTime用于表示日期和时间。范围在公元(基督纪元)0001年1月1日午夜 12:00:00 到公元(C.E.) 9999年12月31日晚上11:59:59之间的日期和时间。时间值以100毫微秒为单位(该单位称为刻度)进行计量。 TimeSpan表示一个时间间隔。其范围可以在Int64.

13、MinValue到Int64.MaxValue之间。,1. 获取当前时间 DateTime dt = DateTime.Now; 2. 将时间格式化成字符串 DateTime dt = DateTime.Now; string str = dt.ToString(); /这是最直接的转化方法 string str2 = dt.ToString(“yyyy-MM-dd HH:mm:ss“);,3. 获取年、月、日、时、分、秒等 DateTime dt = DateTime.Now; int y = dt.Year; /年 int m = dt.Month; /月 int d = dt.Day;

14、/日,注意是 Day,不是 Date int h = dt.Hour; /时 int n = dt.Minute; /分 int s = dt.Second; /秒 int ms = dt.Millisecond; /毫秒 long t = dt.Ticks; /一个数字,用于表示该时间,注意类型为 long,4. 时间比较 DateTime dt1 = DateTime.Now; DateTime dt2 = dt1.AddYears(3); int ct1 = dt1.CompareTo(dt2); /dt1 早于 dt2,返回 -1 int ct2 = dt2.CompareTo(dt1

15、); /dt2 晚于 dt1,返回 1 int ct3 = dt2.CompareTo(dt2); /dt2 与 dt2 相等,返回 0 DateTime dt3 = dt1.AddYears(4); bool b = dt3.Equals(dt2); /dt1 与 dt2 不相等,返回 false,5. 时间加减 DateTime dt = DateTime.Now; dt = dt.AddYears(1); /加 1 年 dt = dt.AddMonths(-1); /减 1 月 dt = dt.AddDays(13); /加 13 日 dt = dt.AddHours(1); /时 dt

16、 = dt.AddMinutes(1); /分 dt = dt.AddSeconds(1); /秒 dt = dt.AddMilliseconds(1); /毫秒 dt = dt.AddTicks(1); /Ticket,用数字表示当前时间,6. 时间减运算 前面的时间加减是对一个时间进行加减,这里是对两个时间进行减运算(用 -),返回的结果类型为TimeSpan。 DateTime dt1 = DateTime.Now; DateTime dt2 = dt1.AddDays(3); TimeSpan ts = dt1 - dt2;,在Web应用开发中,经常会遇到日期的操作,可以设计一个工具类以满足系统的要求。 技术要点 获得当前日期:通过DateTime获得当前日期。 日期格式化:使用DateTime的ToString()方法格式化日期。 将字符串转换为日期:使用Convert.ToDate

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号