首页 > 解决方案 > '是之间的区别' 和 '== 常数'

问题描述

C# 7.0 引入了模式匹配,其中一种模式是常量模式

所以现在可以写:

int? i = 0
if (i is null) {..}

甚至

if (i is 0) {..}

这与==平等相比如何?

哪个运算符用于比较值?

标签: pattern-matchingc#-7.0

解决方案


int? i = 0;
if (i is null) {}
if (i is 0) {}

被翻译成:

int? num = 0;
if (!num.HasValue) {}
if (object.Equals(0, num)) {}

夏普实验室


推荐阅读