C# 运算符详解:包含算术、赋值、比较、逻辑运算符及 Math 类应用

运算符用于对变量和值执行操作。在C#中,有多种运算符可用,包括算术运算符、关系运算符、逻辑运算符等。

算术运算符

算术运算符用于执行常见的数学运算:

csharp 复制代码
int x = 100 + 50;  // 加法,结果为 150
int y = x - 30;    // 减法,结果为 120
int z = x * 2;     // 乘法,结果为 300
int w = x / 3;     // 除法,结果为 50
int remainder = x % 3;  // 取余,结果为 0(100 除以 3 的余数)

Console.WriteLine("x: " + x);
Console.WriteLine("y: " + y);
Console.WriteLine("z: " + z);
Console.WriteLine("w: " + w);
Console.WriteLine("remainder: " + remainder);

递增和递减运算符

递增运算符 ++ 用于将变量的值增加 1,而递减运算符 -- 用于将变量的值减少 1:

csharp 复制代码
int a = 5;
a++;  // 等同于 a = a + 1;
Console.WriteLine("a: " + a);  // 输出 6

int b = 10;
b--;  // 等同于 b = b - 1;
Console.WriteLine("b: " + b);  // 输出 9

注意事项

在实际编码中,请注意避免在表达式中使用过多的递增和递减运算符,以确保代码的可读性。递增和递减运算符的使用可能会导致代码难以理解,并引起潜在的错误。

赋值运算符

赋值运算符用于将值赋给变量。

在下面的示例中,我们使用赋值运算符(=)将值10赋给一个名为x的变量:

csharp 复制代码
// 赋值运算符
int x = 10;

加法赋值运算符(+=)将一个值添加到变量中:

csharp 复制代码
int x = 10;
x += 5;

所有赋值运算符的列表:

| 运算符 | 示例 | 等同于 | 试一试 |
|-------|-----------|--------------|-----|-------|---|---|
| = | x = 5 | x = 5 | |
| += | x += 3 | x = x + 3 | |
| -= | x -= 3 | x = x - 3 | |
| *= | x *= 3 | x = x * 3 | |
| /= | x /= 3 | x = x / 3 | |
| %= | x %= 3 | x = x % 3 | |
| &= | x &= 3 | x = x & 3 | |
| | = | x | = 3 | x = x | 3 | |
| ^= | x ^= 3 | x = x ^ 3 | |
| >>= | x >>= 3 | x = x >> 3 | |
| <<= | x <<= 3 | x = x << 3 | |

C# 比较运算符

比较运算符用于比较两个值(或变量)。这在编程中很重要,因为它帮助我们找到答案并做出决策。

比较的返回值要么是True,要么是False。这些值被称为布尔值

在下面的示例中,我们使用大于运算符(>)来判断5是否大于3:

csharp 复制代码
int x = 5;
int y = 3;
Console.WriteLine(x > y); // 返回True,因为5大于3

所有比较运算符的列表:

运算符 名称 示例
== 等于 x == y
!= 不等于 x != y
> 大于 x > y
< 小于 x < y
>= 大于或等于 x >= y
<= 小于或等于 x <= y

C# 逻辑运算符

与比较运算符一样,您还可以使用逻辑运算符测试TrueFalse值。

逻辑运算符用于确定变量或值之间的逻辑关系:

逻辑与 (&&)

如果两个语句都为true,则返回True

csharp 复制代码
x < 5 && x < 10

逻辑或 (||)

如果其中一个语句为true,则返回True

csharp 复制代码
x < 5 || x < 4

逻辑非 (!)

反转结果,如果结果为true,则返回False

csharp 复制代码
!(x < 5 && x < 10)

C# Math 类

C#Math 类提供了许多方法,允许您对数字执行数学运算。

示例:

csharp 复制代码
using System;

public class MathDemo
{
    public static void Main()
    {
        // 使用 Math.Max() 查找最大值
        int max = Math.Max(5, 10);
        Console.WriteLine("最大值:{0}", max);

        // 使用 Math.Min() 查找最小值
        int min = Math.Min(5, 10);
        Console.WriteLine("最小值:{0}", min);

        // 使用 Math.Sqrt() 计算平方根
        double sqrt = Math.Sqrt(64);
        Console.WriteLine("平方根:{0}", sqrt);

        // 使用 Math.Abs() 计算绝对值
        double abs = Math.Abs(-4.7);
        Console.WriteLine("绝对值:{0}", abs);

        // 使用 Math.Round() 四舍五入
        double round = Math.Round(9.99);
        Console.WriteLine("四舍五入:{0}", round);
    }
}

输出:

复制代码
最大值:10
最小值:5
平方根:8
绝对值:4.7
四舍五入:10

Math 类常用方法:

  • Math.Max(x, y):返回 x 和 y 中的最大值。
  • Math.Min(x, y):返回 x 和 y 中的最小值。
  • Math.Sqrt(x):返回 x 的平方根。
  • Math.Abs(x):返回 x 的绝对值。
  • Math.Round(x):将 x 四舍五入到最接近的整数。
  • Math.Pow(x, y):将 x 乘以自身 y 次。
  • Math.Log(x):返回 x 的自然对数。
  • Math.Sin(x):返回 x 的正弦值。
  • Math.Cos(x):返回 x 的余弦值。
  • Math.Tan(x):返回 x 的正切值。

注意:

  • Math 类中的方法都是静态方法,因此您无需创建 Math 类的实例即可使用它们。
  • Math 类中的方法是 double 精度的,如果您需要更高的精度,可以使用 decimal 类型或其他数学库。

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

相关推荐
xuejianxinokok7 分钟前
新版本 python 3.14 性能到底如何?
后端·python
Ray669 分钟前
代理模式
后端
考虑考虑10 分钟前
Jpa中的枚举类型
spring boot·后端·spring
peter52712 分钟前
LangChain4j入门使用
后端
ArabySide19 分钟前
【ASP.NET Core】分布式场景下ASP.NET Core中JWT应用教程
分布式·后端·asp.net core
hui函数1 小时前
Python全栈(基础篇)——Day06:后端内容(定义函数+调用函数+实战演示+每日一题)
后端·python
bcbnb1 小时前
Charles隐藏功能全攻略,10个高效技巧让你的抓包调试更专业
后端
用户4099322502121 小时前
PostgreSQL选Join策略有啥小九九?Nested Loop/Merge/Hash谁是它的菜?
后端·ai编程·trae
笔尖的记忆1 小时前
【前端架构和框架】react中Scheduler调度原理
前端·面试
koddnty1 小时前
协程退出与智能指针
后端·架构