写点什么

C#入门系列 (五) -- 运算符

作者:陈言必行
  • 2022 年 6 月 05 日
  • 本文字数:1346 字

    阅读完需:约 4 分钟

一,运算符概念

在 C#中,运算符是术语或符号,用以表明数值或者表达式的运算规则。


运算符所操作的数值或表达式称为操作数。


接受一个操作数的运算符称作一元运算符,例如取负运算符-、自增运算符++。


接受两个操作数的运算符称作二元运算符,例如算术运算符+、-、*、/。


条件运算符?:接受三个操作数,是 C#中唯一的三元运算符。


C#运算符对操作数的形式和数据类型都有要求,


如二元运算符一般要求其两个操作数类型相同,或两个操作数类型能隐式转换为同一类型、逻辑运算的操作数只能为 bool 类型等。


根据运算的类型,可把运算符分为:


  • 算术运算符

  • 赋值运算符

  • 关系运算符

  • 逻辑运算符

  • 位运算符

  • 其他运算符



二,算数运算符

算数运算符包括:+,-,x,/,%,++,--




三,赋值运算符


示例:


class Program{    static void Main(string[] args)    {        int a = 21;        int b;
b = a; Console.WriteLine(" = b 的值 = " + b); //输出: = b 的值 = 21 b += a; Console.WriteLine(" += b 的值 = " + b); //输出: += b 的值 = 42
b -= a; Console.WriteLine(" -= b 的值 = " + b); //输出: -= b 的值 = 21
b *= a; Console.WriteLine(" *= b 的值 = " + b); //输出: *= b 的值 = 441
b /= a; Console.WriteLine(" /= b 的值 = " + b); //输出: /= b 的值 = 21
b = 200; b %= a; Console.WriteLine(" %= b 的值 = " + b); //输出: %= b 的值 = 11
b <<= 2; Console.WriteLine(" <<= b 的值 = " + b); //输出: <<= b 的值 = 44
b >>= 2; Console.WriteLine(" >>= b 的值 = " + b); //输出: >>= b 的值 = 11
b &= 2; Console.WriteLine(" &= b 的值 = " + b); //输出: &= b 的值 = 2
b ^= 2; Console.WriteLine("^= b 的值 = " + b); //输出: ^= b 的值 = 0
b |= 2; Console.WriteLine("|= b 的值 = " + b); //输出: |= b 的值 = 2
Console.ReadLine(); }}
复制代码



四,关系运算符



五,逻辑运算符



六,位运算符

位运算符位运算符作用于位,并逐位执行操作。&、 | 和 ^ 的真值表如下所示:



示例:


class Program{    static void Main(string[] args)    {        int a = 60;  // 60 = 0011 1100        int b = 13;  // 13 = 0000 1101        int c = 0;
c = a & b; //结果:12 = 0000 1100 Console.WriteLine(" & 结果是: " + c);
c = a | b; //结果:61 = 0011 1101 Console.WriteLine(" | 结果是: " + c);
c = a ^ b; //结果:49 = 0011 0001 Console.WriteLine(" ^ 结果是: " + c);
c = ~a; //结果: -61 = 1100 0011 Console.WriteLine(" ~ 结果是: " + c);
c = a << 2; //结果:240 = 1111 0000 Console.WriteLine(" << 结果是: " + c);
c = a >> 2; //结果:15 = 0000 1111 Console.WriteLine(" >> 结果是: " + c);
Console.ReadLine(); }}
复制代码


发布于: 刚刚阅读数: 5
用户头像

陈言必行

关注

公号:开发同学留步 2019.03.12 加入

我是一个从事Unity游戏开发攻城狮,6年开发经验,助你日常不加班。

评论

发布
暂无评论
C#入门系列(五) -- 运算符_C#_陈言必行_InfoQ写作社区