您的位置:首页 > 职场人生

黑马程序员-.NET笔记--异常、运算符、逻辑

2012-12-19 11:52 267 查看
---------------------- ASP.Net+Android+IO开发S.Net培训、期待与您交流! ----------------------

第三天 复习

变量一定要先声明,再赋值,才能使用。

3-1

C#中异常捕获如何来完成?

Try

{

有可能出现错误的代码写在这里。

}

Catch

{

出错后的处理

}

上面的程序如何执行:

如果try中的代码没有出错,则程序正常运行try中的内容后,不会执行catch中的内容。

如果try中的代码一旦出错,程序立即跳入catch中去执行代码。那么try中的出错代码后面的代码不再执行了。

3-2 自加自减 复合赋值

++ 自加
有前加和后加

- - 自减 有前减和后减

例:

Int age = 18;

Int sum = age++ - 10;

上面代码age是后加,所以在进行语句运算是,age++取age原值参与运算,所以sum = 8

Intage = 18;

Intsum = ++age – 10;

上面代age 是前加,所以在进行语句运算时,++age取age加1后的新值参与运算,

所以sum = 9

总之,不管++age还是age++,经过运算后,age的值都进行了+1运算。

思想转换:

int age = 18;

int sum = age++ - 10;

相当于:

int age = 18;

int sum = age – 10;

age = age + 1;

int age = 18;

int sum = ++age – 10;

相当于:

int age = 18;

age = age + 1;

int sum = age – 10;

在C#中,一般情况下,一元运算符的优先级大于二元运算符。

复合运算符:

+= 例如:age = age +3; çè age += 3; 理解成:在age 的原值上加3

-= 例如:age = age – 3; çè age -= 3;

*=

/=

%=

在C#中能够改变变量中的值:= ++ - -

在C#中,有6个关系运算符,用于比较两个事物之间的关系。





== 比较相等

!= 比较不等

〉=

〈=

关于表达式:由关系运算符连接起来的式子。

关系表达式的运算结果为bool类型,bool类型只有两个值,一个是true,一个是false。如果关于运算表达式成立,则这个表达式的值为true,否则为false。

布尔(bool)类型:

bool值只有两个

真:ture

假:false

例:

1、 大象的重量(15000)〉老鼠的重量(1)

2、 兔子的寿命(3)〉乌龟的寿命(100)

3、 39〈18

4、 我的年龄(20) 〉=你的年龄(20)

逻辑运算符:

&& || !

逻辑与运算 逻辑或运算 逻辑非运算

逻辑与

用法:bool isRight = 表达式1 && 表达式2;

逻辑与 连接的表达式,要能够求解成bool类型。一般情况下都是关系表达式。

整个逻辑与运算的结果也是bool类型

表达式1
表达式2
&&后结果
True
True
True
True
False
False
False
True
False
False
False
False
当两个表达式全为true,其结果为True。

逻辑或

用法:bool isRight = 表达式1 || 表达式2;

逻辑与连接的表达式,要能够求解成bool类型。一般情况下都是关系表达式。

整个逻辑与运算的结果也是bool类型

表达式1
表达式2
&&后结果
True
True
True
True
False
True
False
True
True
False
False
False
只要有一个为true,其结果为true。

逻辑非!

这是一个一元运算符

用法:

!(布尔类型的表达式) 后面只能跟布尔类型

作用:

如果:布尔类型的表达式为true,加!号后,其整个式子的结果为false

如果:布尔类型的表达式为false,加!号后,其整个式子的结果为true

练习1:

让用户输入张三的语文和数学成绩,输出一下判断是否正确,正确输出True,

错误输出False。

1、 张三的语文和数学成绩都大于90分

2、 语文和数学有一门是大于90分的

练习 2:

写下判断润年的表达式,设待判断的年份变量为year。

润年的判定(符合下面两个条件之一):

*年份能够被400整除

*年份能够被4整除但不能被100整除。

让用户输入一个年份如果是润年,则输出true,如果不是,则输出false。

能使变量值改变的运算符 = ++ - -

扩展 摘抄:C#运算符优先级

运算符是表达式很重要的一部分,它指示对表达式中的操作数进行什么样的运算,如+、-、*、/、%等。根据运算符所需操作数的个数,可以把运算符分为以下3类。本节介绍运算符的知识点。

一元运算符:只带有一个操作数并使用前缀表示法(如--x)或后缀表示法(如x++),如++、- -等运算符。

二元运算符:带有两个操作数并且全都使用中缀表示法(如x+y),如+、-、*、/等运算符。

三元运算符:带有3个操作数并使用中缀表示法,如?: 运算符。

注意:C#语言只包含一个三元运算符:? ;

5.2.1 运算符优先级

算术表达式是最为常见的一种表达式。它由操作数和运算符组成,而且这些运算符之间是存在一定优先级的,如*运算符的优先级就大于+运算符的优先级。C#语言中的运算符一样,也存在优先级。在计算表达式的值时,也必须遵循运算符的优先级的规则。

特别地,当表达式包括多个运算符时,运算符的优先级控制各个运算符的计算顺序。对于x+y*z表达式而言,该表达式首先计算y*z表达式的值,然后再计算y*z表达式的结果与x的和。即该表达式等价于x+(y*z)表达式,那是因为*运算符的优先级大于+运算符的优先级。根据运算符的优先级可以把C#中的运算符分为以下14类,如表5.2所示。

表5.2 C#中的运算符表



注意:表5.2是按照从最高到最低的优先级顺序列举了C#语言的所有运算符。

当操作数出现在具有相同优先级的两个运算符之间时,运算符的顺序与运算符本身特性相关,具体说明如下所示。

除了赋值运算符外,所有的二元运算符都是从左向右执行运算。如"x+y+z"表达式按照"(x+y)+z"表达式进行计算。

赋值运算符和?:条件运算符是从右向左执行运算。如x=y=z表达式按照x=(y=z)表达式进行计算。

出处:http://tieba.baidu.com/p/869790562

-------------------------------------------------------------------------------------------

---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------详细请查看:http://edu.csdn.net
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: