From Microsoft new-features-in-c-7-0:
public void PrintStars(object o) { if (o is null) return; // constant pattern \"null\" if (!(o is int i)) r
The differences between "is" and == is "is" special that it act as == if you compare to value and act as typeof(type) when you compare type of object to type.