C# is被sonaqube建议换一种写法,代码看一波 | Duplicate casts should not be made

Sonarqube给出性能提示

Sonaqube从性能的角度出来,解释了一下为什么不要使用is,而要使用as,因为可以节省一次转化,果真是扣得很细致!平时会注意得这么细致?来来来,看看具体的sonarqube提示,感受一下“高性能”代码是怎么堆出来的!

推荐

Sonarqube内置了丰富的检查规则与最佳实践,这是写代码路上一个不错的工具,写完扫一扫,就能发起代码中各种不合理的地方,并有详细的提示,为什么不合理,应该要修改成什么样子的,简直就是必备的工具之一!

写代码的流程完善

写代码的时候,时不时使用sonarqube检查一下,或者写完后使用sonarqube检查一下。

————sonarqube 提示开始———–

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

var f = x as Fruit;
if (f != null)
{
  // code
}

————sonarqube 提示结束———–

点评:这种脏脏的事情不应该由编译器自动优化么?你平时会注意这个细节么?欢迎留言写出你的感受!

此条目发表在未分类分类目录。将固定链接加入收藏夹。

发表评论

邮箱地址不会被公开。 必填项已用*标注