Zhonghui

每个不曾起舞的日子,都是对生命的辜负

User Tools

Site Tools


程序:csharp:运算符

C#运算符


可类比C的

  • +
  • -
  • *
  • /
  • %
  • ++
  • --
  • ==
  • !=
  • >
  • <
  • >=
  • <=
  • &&
  • ||
  • !
  • &
  • |
  • ^
  • ~
  • >>
  • <<
  • =
  • +=
  • -=
  • *=
  • /=
  • %=
  • >>=
  • <<=
  • &=
  • |=
  • ^=
  • &(取地址)
  • *(取值)
  • ?:(条件表达式)

其他

is

判断对象是否为某一类型

as

强制转换,即使转换失败也不会抛出异常

? 问号运算符

using System;
 
class People
{
    public void Say() { }
}
 
class MainClass
{
    static void Main(string[] args)
    {
        People People = new People();
 
        People?.Say(); // 1 在访问对象的成员之前先做一次判断,避免访问的是非法对象
 
        int HasPeople = (People != null) ? 1 : 0; // 2 条件表达式
 
        // 普通的数据类型是不能被赋值为null的
        // int iData = null;
 
        // 3 可空类型,可以表示其基础值类型正常范围内的值,再加上一个null值
        // 在数据类型后面加?,表示其是一个可以为null的类型,其他方面不受影响
        // 这样的类型没有初始值的话默认就是null
        // 可空类型和其基础类型不是同一种类型,转换时要注意
        int? iData = null;
 
        int? Data = 1;
        int? Result = iData ?? Data; // 4 合并结果,合并结果等于最靠前的非null的变量
    }
}
/var/www/DokuWikiStick/dokuwiki/data/pages/程序/csharp/运算符.txt · Last modified: 2022/08/02 16:36 (external edit)