第5章C#语言技巧.ppt

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
装箱与拆箱 任何值类型、引用类型可以和对象(object)类型之间进行转换。装箱转换是指将一个值类型隐式或显式地转换成一个对象类型,或者把这个值类型转换成一个被该值类型应用的接口类型(interface-type)。把一个值类型的值装箱,就是创建一个对象实例并将这个值复制给这个对象,装箱后的对象中的数据位于堆中,堆中的地址在栈中。被装箱的类型的值是作为一个拷贝赋给对象的。如: int i = 10; object obj = i; 或者 object obj = object(i); 拆箱转换是指将一个对象类型显式地转换成一个值类型,或是将一个接口类型显式地转换成一个执行该接口地值类型。注意装箱操作可以隐式进行但拆箱操作必须是显式的。拆箱过程分成两步:首先,检查这个对象实例,看它是否为给定的值类型的装箱值。然后,把这个实例的值拷贝给值类型的变量。比如: int i = 10; object obj = i; int j = (int)obj; 运算符与关系表达式 算术运算符与算术表达式 赋值运算符与赋值表达式 关系运算符与关系表达式 逻辑运算符与逻辑表达式 位运算符 对象创建运算符 其它运算符 流程控制语句 分支控制语句 If语句 if (条件1为真) {条件1为真时执行的语句} else if (条件2为真) {条件2为真时执行的语句} …… else {条件为假时执行的语句} Switch语句 switch(表达式) { case标记1 : 代码块1; break; case标记2 : 代码块2; break; …… default : 默认代码块; } 循环控制语句 for 循环 for(表达式1 ; 表达式2 ; 表达式3){语句} 要注意初始化变量的值。例如: for(int i=0;i10;i++) { for(int j=1;j6;j++) { label4.Text=label4.Text+[+Convert.ToString(i+j2)+]; } } 在这个例子中,j是从1开始循环,每次加1循环到6,而i是从0开始循环,每次加1循环到10。 while循环 while(布尔表达式){语句} 与for循环一样,也是一个预测试的循环。例如: int i=1; while(i10) { label4.Text=i.ToString(); i+=5; //每次加5,直到i10条件不成立,就跳出循环。 } do…while循环 do{ 代码块 } while (循环条件)//至少执行一次 例如: int i=1; do{ label4.Text=i.ToString(); i+=5; //注意这个地方,控制循环使用,预防死循环。 } while(i10); foreach循环 foreach(类型标识符 标识符 in 表达式){语句} 支持IEnumberable接口的容器类中迭代的每个项目。这种容器包括C#数组,System.Collection名称空间的集合累,以及用户定义的集合累。例如: int[] i={1,2,3}; foreach(int t in i) //每执行一次,循环变量就依次取集合中的一个无素代入其中 { label4.Text=t.ToString(); } 上述代码的运行效果就是依次遍历数组i的值,将数组i的值依次赋值给变量t 异常处理语句 为了保证程序更加完备,经常在程序中会使用到异常处理语句,语法如下: Try {被保护的语句块} Catch {异常申明1} {语句1} Finally {完成善后工作的语句块} Try块:封装了程序要执行的代码,如果只这段代码的过程中出现错误或者异常情况,就会抛出一个异常! Catch块:在try块的后面,封装了处理在try代码块中出现的错误所采取的措施。 Finally块:在安装错误处理功能的例程末尾,无论是使用函数处于正常状态,还是因为抛出错误而处于不正常状态,这个块中的代码都要执行。另外,不能跳出finally块!如果跳转语句要跳出try块,仍要执行finally块。 using System; class CatchIT { pub

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

我是一名原创力文库的爱好者!从事自由职业!

1亿VIP精品文档

相关文档