[C#入门] 运算符优先级

本文介绍了C#中运算符的优先级规则,包括算数运算符、关系运算符和逻辑运算符的优先级,并通过示例说明了括号如何改变运算顺序。运算符的优先级顺序为:乘除和取模>加减>关系运算符>逻辑运算符>赋值运算符。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

虽然程序中代码在编译环节是从上到下,从左到右。但是当代码中包含运算符时,会优先执行运算符对应的优先级。所以,运算符之间是存在优先级的。

例1

 

加减乘除,和数学中一样,先乘除后加减,如果希望先加减,则要使用"()"小括号包裹起来,这样会先计算括号内的。

 

int a = 10 - 2 * 5;

上述代码的中的优先级分别为:

1:"*" 号,先乘除(算数运算符)

2:"-" 号,后加减(算数运算符)

3:"="号,再赋值(赋值运算符)

 

如果代码中只存在乘除,或者加减。

 

int a = 10 * 2 / 5; // a = 4
int b = 10 - 2 + 5; // b = 13

1:优先级相同时,从左往右依次执行

上述代码中,a = 4,b = 13

 

 

 

算数运算符中优先级从低到高,分别为:

 

1:"+"   "-"   

2:"%"   "*"   "/"

 

 

 

也就是说,程序中,如果有乘除,则乘除和取模是第一优先级,然后是加减。

 

但是,如果代码中,出现了小括号"()",则无论是什么算数运算符,先计算小括号中的内容

 

// 1.当有括号时,先计算括号内的。 int a = (10 + 5) * 2;
// 2.加减和乘除时,会先计算乘除,然后计算加减// 乘除不区分优先级,谁在左边谁先计算// a = 13.8int a = 10 + 5 - 3 * 2  / 5;
// 3.乘除运算,优先级相同,从左向右依次计算int a = 10 * 2 / 5;
// 4.取模和乘除,乘除的优先级大于取模运算。// 所以会先计算乘除,后计算取模int a = 10 % 2  * 5;

 

例2

 

算数运算符的级别高于关系运算符。

 

当代码中同时出现算数运算符和关系运算符时,程序将会先执行算数运算符。

if(15 > 2 * 5){}

以上代码结果为真(true)!

 

 

总结:算数运算符的级别高于关系运算符。先计算,后对比关系(大小判断)

 

 

 

 

例3

 

逻辑运算符,"&&" 和 "||"

 

这两者之间,"&&" 的级别高于 "||",所以"&&"会先计算

 

if(10 > 2 && 1 > 2 || 3 > 2){}

上述代码中,条件判断为真(true)

 

因为"&&"的级别高,所有 "&&"相关联的条件首先会被当成一组条件。

 

10 > 2 && 1 > 2 (最终返回false)

 

false || 3 > 2 (最终返回true)

 

总结

 

所有算数运算符中。

算数运算符>关系运算符>逻辑运算符>赋值运算符。

先计算乘除加减>比对大小>判断逻辑>最后赋值

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值