- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 2.3.3 逻辑运算符 逻辑运算符是用来对两个bool类型的操作数进行逻辑运算的,运算的结果也是bool类型。 其中最简单的是求反操作符,它使用感叹号(!)表示。!操作符求一个布尔值的反值。 bool areYouReady; areYouReady = true; Console.WriteLine(areYouReady); //输出true Console.WriteLine(!areYouReady); //输出false * 2.3.3 逻辑运算符 另外还有两个常用的操作符:逻辑与操作符(“”);逻辑或操作符(“ || ”)。 只有作为操作数的两个布尔表达式都为true的前提下,操作符的求值结果才为true。而两个表达式任何一个为true,操作符||的求值结果都为true。 bool b b = (a 0) (a 100); b = (a 0) || (a 100); * 运算符“”和“||” 具有短路特征,使代码的效率更高。所谓短路就是在逻辑运算的过程中,如果计算第一个操作数时,就能得知运算结果就不会再计算第二个操作数。 短路求值 b = (a 0) (a 100); 如果a 0的结果为false,则b为false。 b = (a 0) || (a 100); 如果a 0的结果为true,则b为true。 * 2.3.5 赋值运算符 赋值运算符有两种形式,一个是简单赋值运算符,一个是复合赋值运算符。 1. 简单赋值运算符 简单赋值运算符一般格式为:Var = Expression 赋值运算的结果是:其值是右边表达式的值,类型是左值类型。如果左值和右值的类型不一致,在兼容的情况下,则需要进行自动转换(隐式转换)或强制类型转换(显式类型转换)。一般的原则是,从占用内存较少的短数据类型向占用内存较多的长数据类型赋值时,可以不做显式的类型转换,C#会进行自动类型转换,反之当从较长的数据类型向占用较少内存的短数据类型赋值时,则必须做强制类型转换。 * 2. 复合赋值运算符 在做形如x = x +3 这样运算时,C#提供一种简化方式x +=3,这就是复合赋值运算。其一般形式为: var op= expression // op 表示某一运算符 等价的意义是: var = var op expression 除了关系运算符,一般二元运算符都可以和赋值运算符在一起构成复合赋值运算。 2.3.5 赋值运算符 * 表2.8 复合赋值运算 * 2.3.6条件运算符 条件运算符形式为: Exp1 ? Exp2 : Exp3 其中表达式Exp1的运算结果必须是一个bool类型值,表达式Exp2和Exp3可以是任意数据类型,但它们返回的数据类型必须一致。 条件运算符的运算过程是:首先计算Exp1的值,如果其值为true,则计算Exp2值,这个值就是整个表达式的结果;否则,取Exp3的值作为整个表达式的结果。 例如: z = x y ? x : y ; // z 的值就是x,y中较大的一个值 z = x =0 ? x : -x ; // z的值就是x的绝对值 * 2.3.7 位运算符 位运算符主要分为逻辑运算和移位运算,它的运算操作直接作用于操作数的每一位,所以操作数的类型必须是整数类型,不能是bool类型,float或double等类型。 * 按位与、按位或、按位异或、按位取反运算 * 在实际使用中,按位与通常用于将某位置0或测试某位是0还是1;按位或通常用于将某位置1。 ushort n; n=0x17ff ; if ( n 0x8000 == 0 ) Console.WriteLine (最高位为0 ) ; else Console.WriteLine (最高位为1 ) ; n = n 0x7ffff ; n = n | 0x8000 ; // n 的最高位置0,其它位不变 // n 的最高位置1,其它位不变 * 按位异或运算有一个特别的属性,假设有两个整型数x和 y,则表达式 (x ^ y) ^ y值还原为x,利用这个属性可以创建简单的加密程序。 char ch1 = O , ch2 = K ; int key = 0x1f ; Console.WriteLine (明文
您可能关注的文档
最近下载
- 七年级上册语文第一单元重点内容整合练习含答案及解析.pdf
- 植物界 一、植物界的主要类群.ppt VIP
- 【36页PPT】CQI23模塑系统评估.pptx VIP
- 全科医生转岗培训模拟练习题附答案6.doc
- 2022-LY-022林地保护利用规划林地落界技术规程.pdf VIP
- (高清版)W-S-T 403-2024 临床化学检验常用项目分析质量标准.pdf VIP
- YYT1437-2023 医疗器械 GBT42062应用指南.pdf VIP
- 2025年全国导游资格证考试《全导+地导》真题卷(含答案).pdf VIP
- CBT 3000-2019 船舶生产企业生产条件基本要求及评价方法.docx VIP
- 交通事故案例分析.ppt VIP
文档评论(0)