【问题标题】:"".All(char.IsNumber) Returns True"".All(char.IsNumber) 返回 True
【发布时间】:2019-04-27 18:05:56
【问题描述】:

为什么"".All(char.IsNumber) 返回true? 根据方法总结,All()方法:

判断一个序列的所有元素是否满足一个条件。

这似乎不太准确,因为序列中没有任何元素满足条件,因为没有元素开始。

【问题讨论】:

标签: c# linq


【解决方案1】:

以这种方式记录 - MSDN, in the Returns section(正如 Loocid 在评论中指出的那样):

true 如果源序列的每个元素都通过了指定谓词中的测试,或者如果序列为空;否则,false

之所以定义它,是因为空序列上 All 的语义定义最终源自数学逻辑,其中 for-all 量词在空集上以这种方式工作。这在数学 SE 上的这个问题的答案中得到了解释:Why is predicate “all” as in all(SET) true if the SET is empty?

【讨论】:

  • 您应该在答案中添加两个链接中的相关引号。
  • 引用 MSDN 很好,但是否真的有必要引用另一个 SE 问题的各种答案(即使它是不同的 SE 站点)?根据网站政策,它不会去任何地方。 (说真的,问是因为我不知道。)
  • 你说得有道理——stackoverflow 不太可能比 Math.stackexchange 活得更久——但这不仅是为了链接过时,也是为了让答案更具可读性。根据经验,stackoverflow 帖子(答案或问题,无所谓)应该是自包含的。链接应用作“额外阅读”或支持您的主张。想一想,这正是您的答案中指向 math.se 的链接。 +1。
猜你喜欢
  • 1970-01-01
  • 2023-03-26
  • 2016-03-05
  • 2016-06-08
  • 2017-12-03
  • 2012-07-23
  • 2019-10-04
  • 1970-01-01
  • 2020-04-19
相关资源
最近更新 更多