- 运算符(算术、逻辑、位运算、赋值)
写代码不等于做数学题,但有些时候,我们需要点数学小聪明。
比如你需要判断一个数能不能被 2 整除,或者你想在帮一个变量“加个 5”的时候少打几个字。这时候,运算符就是你手里的瑞士军刀。别被那些符号吓到了,它们其实只是让计算机帮你干活的各种“指令牌”。
算术运算符:这不仅是加减乘除
基础的 + - * / 相信你已经很熟了,这里主要聊聊那些容易让你在面试或写代码时踩坑的地方。
试想一下,你手里有 10 块钱,想买两瓶 3 块钱的可乐。你可能会想 10 / 3 = 3.33,但在 C# 里,如果你定义的是整数,结果会直接告诉你:3。整数除法直接切掉小数点,这不是Bug,这是数学规则的体现。
最实用的是取模运算符 %。它是用来干嘛的?用来“找剩余”的。比如你能被 5 整除吗?用 % 5,结果是 0 就说明可以。抢半价时,想知道自己能不能抵扣 5 元运费,也能用它。
整数除法会吃掉小数,这是新手最容易掉进去的坑。
赋值运算符:偷懒的程序员是伟大的
谁喜欢多打字?没人。
如果你想让变量 x 的值加 1,以前你得写 x = x + 1,这就像是一边吃饭一边把自己嚼碎的东西再咽下去。C# 给我们提供了快捷方式。
+= 是个好东西。x += 1,它读起来就像 x 变得跟原来一样多,只不过多加了一丢丢。同理还有 -= *-=。这种写法不仅看着省事,有时候编译器还能生成更优的机器码,跑得更快。
逻辑运算符:程序员的决策系统
&& 和 || 是逻辑世界的通行证。
&&(逻辑与)是个严苛的保镖。你想出门吗?前提是既有钥匙(true),又有地铁卡(true)。少一样,都不行。这就是 if (钥匙 && 地铁卡) 的逻辑。
||(逻辑或)是个随性的朋友。你想出门吗?只要钥匙有,或者地铁卡有,甚至只要天气不错,我都能让你出门。这是一种“死道友不死贫道”的宽容度。
至于 !(非运算),就是把结果反转。!true 就是 false,极其简单,但配合其他运算符用起来很香。
&& 决定能不能走,|| 决定有没有退路。
位运算符:计算机的原始代码
这块通常是新手的噩梦,也是高手的得分点。位运算符直接操作的是二进制位(0 和 1)。咱们不需要精通二进制也能懂它,把它想象成控制灯泡开关就对了。
&(按位与):需要两边的灯都亮。如果有一位是 0,结果就是 0。常用来做“掩码”或者判断某位是否为 0。|(按位或):只要有一边亮就行。哪边是 1,结果就显 1。用来强制开启某些状态位。^(按位异或):非常有趣。只有当两边灯状态不同时(一开一关),结果才亮。这东西可以用来快速交换两个变量的值,或者给数据做个加密(简单的)。
还有位移运算 << 和 >>。x << 1 就像是把你的数值左移了一格,相当于乘以 2(前提是没溢出)。这是底层开发里经常见到的高效操作。
位运算就像二进制版本的刮刮乐,只有懂的人才懂怎么中大奖,或者怎么避开无效的擦除。
实战建议:
别光看,去控制台敲一下。试着写个程序,算算 5 & 3 是多少,或者 10 % 4 等于几。你会发现,当你亲手按下回车键,看到控制台蹦出结果的那一刻,那些枯燥的符号突然就活了。
从今天开始,用最少的字,写出最漂亮的代码。代码写得太长,不仅显得笨拙,还容易让电脑喘不过气来。
现在,打开你的编辑器,试着把 a = a + 5 改成 a += 5 看看,是不是感觉很爽?





这一切,似未曾拥有