- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
分析程序 int x = 20; x = x + 10; Console.WriteLine(x); 这样行不行?? 在数学上,x=x+10 是一个不可能成立的式子 在C#中,x=x+10; 却是常见的赋值表达式 分析程序 int x = 20; x = x + 10; Console.WriteLine(x); 运行结果 30 内存 x 20 20+10= 30 复合赋值运算符 b += 3; b = b + 3; 一般形式: 变量 运算符 = 表达式 变量 = 变量 运算符 表达式 复合赋值运算符: += /= %=等 练习 int a = 10, b = 23; float c = 20.0; a %= 3; b --; c /= 5; Console.WriteLine(a); Console.WriteLine(b); Console.WriteLine(c); 字符串运算符 C#提供的字符串运算符只有一个:“+”,用于串联(拼接)两个字符串 当其中的一个操作数是字符串类型或两个操作数都是字符串类型时,二元+运算符执行字符串串联。在字符串串联运算中,如果它的一个操作数为null,则用空字符串来替换此操作数。否则,任何非字符串参数都通过调用从object类型继承的虚ToString方法,转换为它的字符串表示形式。如果ToString返回null,则替换成空字符串 位运算符 运算符 含义 优先级 实例 结果 ~ 按位求补 1 ~0xf8 0xffffff07 左移 2 0x1 1 0x2 右移 2 0xffffffff 1 0x7fffffff 按位逻辑与 3 0xf8 0x3f 0x38 ^ 按位逻辑异或 4 0xf8 ^ 0x3f 0xc7 | 按位逻辑或 5 0xf8 | 0x3f 0xff P 25-26 条件运算符 逻辑表达式? 表达式1: 表达式2; 首先计算“逻辑表达式”的值,如果为true,则运算结果为“表达式1”的值,否则运算结果为“表达式2”的值 计算a和b两个数中较大的数,并将其赋给变量maxnum中,语句为: maxnum = (a b)? a : b; P 27 其它运算符 sizeof用于获取值类型的字节大小,仅适用于值类型,而不适用于引用类型。sizeof运算符只能在不安全代码块中使用 typeof用于获取类型的System.Type对象,例如:System.Type type = typeof(int); 若要获取表达式的运行时类型,可以使用.NET Framework方法GetType() P 27 运算符优先级 表达式中的运算符按照运算符优先级(precedence)的特定顺序和结合性规则计算 P 27-28 运算符的优先级与结合顺序 X+5*2 优先级 10-6-2 int x=3, y=4; y=x=5; 结合顺序 优先级 ① 一元运算符的优先级高于二元和三元运算符。 ② 不同种类运算符的优先级有高低之分,算术运算符的优先级高于关系运算符,关系运算符的优先级高于逻辑运算符,逻辑运算符的优先级高于条件运算符,条件运算符的优先级高于赋值运算符。 ③ 有些同类运算符优先级也有高低之分,在算术运算符中,乘、除、求余的优先级高于加、减;在关系运算符中,小于、大于、小于等于、大于等于的优先级高于相等与不等;逻辑运算符的优先级按从高到低排列为非、与、或。 可以使用圆括号明确运算顺序。例如: string s=xy?greater than:x==y?equal to:less than; string s=xy?greater than:(x==y?equal to:less than); 括号还可以改变表达式的运算顺序 : b*c+d b*(c+d) Console.WriteLine( (2+3)*6); 30 Console.WriteLine(((2+3)*6+2)*3); 96 括号可以多层。但不能使用[]和{}来改变顺序(他们有特殊用途) C#的运算符号非常多 一个表达式中嵌入太多运算符时,经常难以判断它们的运算顺序(优先级)。为了减少错误,在编程中可以多使用括号。多余的括号也不会降低程序运行速度 例子:使用括号来改变运算顺序 结合性 在多个同级运算符中,赋值运算符与条件运算符是由右向左结合的,除赋值运算符以外的二元运算符是由左向右结合的。 例如,x+y+z是按(x+y)+z的顺序运算的,而x=y=z是按x=(y=z)的顺序运算(赋值)的。 表达式 表达式的组成 表达式由操作数(变量、常量、函数)、运算符和圆括号按一定规则组成。表达式通过运算后产生运算结果,运算结果的
您可能关注的文档
最近下载
- 信息化系统运维管理规范与实践案例分析.docx VIP
- 2021年全国新高考Ⅰ卷数学真题试卷(含答案).pdf VIP
- BP85956D_CN_DS_Rev.0.91 规格书晶丰明源家电电源.pdf VIP
- 经胸超声心动图检查规范化应用中国专家共识(2024版)解读PPT课件.pptx VIP
- 常用北曲新谱_郑骞.doc VIP
- 1小纸条 高考成语三千 日积月累记练(测试版)001-025 (1).docx
- 《法理学》课件(第五章:法律关系).ppt VIP
- 2025年自习室市场用户付费意愿与自习室服务质量提升策略分析.docx
- 生物安全法的试题及答案.docx VIP
- 《全大学进阶英语综合教程3》Unit-4教案.pdf VIP
文档评论(0)