org.sonar.plugins.csharp.S3247.html Maven / Gradle / Ivy
Why is this an issue?
Because the is
operator performs a cast if the object is not null, using is
to check type and then casting the same
argument to that type, necessarily performs two casts. The same result can be achieved more efficiently with a single cast using as
,
followed by a null-check.
Noncompliant code example
if (x is Fruit) // Noncompliant
{
var f = (Fruit)x; // or x as Fruit
// ...
}
Compliant solution
// C# 6
var f = x as Fruit;
if (f != null)
{
// ...
}
// C# 7
if (x is Fruit fruit)
{
// ...
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy