很多C#开发人员在做查找操作的时候喜欢用'Where'操作并通过'First'获取第一次出现的记录。这样的操作是不对的。因为'First'操作不会在 'Where'条件中起到作用。而且,这样也不能确保记录一定被找到。如果'First'在没有记录返回的操作中使用,系统会返回默认值并且没有任何异常 被抛出。

//错误的写法
List numbers = new List(){1,4,5,9,11,15,20,21,25,34,55};
return numbers.Where(x => Fibonacci.IsInFibonacciSequence(x)).First();

//部分正确的写法
return numbers.First(x => Fibonacci.IsInFibonacciSequence(x));

//正确的写法
return numbers.FirstOrDefault(x => Fibonacci.IsInFibonacciSequence(x));

相关文章:

  • 2021-11-04
  • 2022-12-23
  • 2018-06-26
  • 2022-12-23
猜你喜欢
  • 2021-12-25
  • 2022-12-23
  • 2022-12-23
  • 2022-01-05
  • 2022-12-23
  • 2021-11-28
相关资源
相似解决方案