'is <constantpattern>' 和 '== constant' 之间的区别
Difference between 'is <constantpattern>' and '== constant'
C# 7.0引入了模式匹配,其中一种模式是constant pattern.
所以现在可以写:
int? i = 0
if (i is null) {..}
甚至
if (i is 0) {..}
这与 ==
平等相比如何?
哪个运算符用于比较值?
int? i = 0;
if (i is null) {}
if (i is 0) {}
翻译成:
int? num = 0;
if (!num.HasValue) {}
if (object.Equals(0, num)) {}
C# 7.0引入了模式匹配,其中一种模式是constant pattern.
所以现在可以写:
int? i = 0
if (i is null) {..}
甚至
if (i is 0) {..}
这与 ==
平等相比如何?
哪个运算符用于比较值?
int? i = 0;
if (i is null) {}
if (i is 0) {}
翻译成:
int? num = 0;
if (!num.HasValue) {}
if (object.Equals(0, num)) {}