Skip to content
On this page

赋值运算符

前面,我们已经学过一个赋值运算符 =,这次我们学习一下其他的赋值运算符:

  • 加赋值 +=:先加后赋值。

    csharp
    int x = 5;
    x += 2; //这句等同于 x = x + 2;执行后,x 的值为 7
  • 减赋值 -=:先减后赋值。

    csharp
    int x = 5;
    x -= 2; //这句等同于 x = x - 2;执行后,x 的值为 3
  • 乘赋值 *=:先乘后赋值。

    csharp
    int x = 5;
    x *= 2; //这句等同于 x = x * 2;执行后,x 的值为 10
  • 除赋值 /=:先除后赋值。

    csharp
    int x = 5;
    x /= 2; //这句等同于 x = x / 2;执行后,x 的值为 2
  • 取余赋值 %=:先取余后赋值。

    csharp
    int x = 5;
    x %= 2; //这句等同于 x = x % 2;执行后,x 的值为 1

注意

与其他运算符从左向右计算不同,赋值运算符从右向左计算。

csharp
using System;
using System.Collections.Generic;
using System.Text;

namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            double x, y; 
            x = y = 2; //从右向左赋值,x、y 的值都是 2
            x /= 0.5;
          	// 给变量 y 赋值,使得程序能够输出 4
            y %= 2;
            Console.WriteLine(x - y);
        }
    }
}