c# - "".All(char.IsNumber) 返回 True
问题描述
为什么"".All(char.IsNumber)
返回true
?根据方法总结,All()
方法:
确定序列的所有元素是否满足条件。
这似乎不太准确,因为序列中没有任何元素满足条件,因为没有元素开始。
解决方案
以这种方式记录 - MSDN,在退货部分(正如 Loocid 在评论中指出的那样):
true
如果源序列的每个元素都通过了指定谓词中的测试,或者序列为空;否则,false
。
之所以定义它这样做的原因是因为空序列上 All 的语义定义最终源自数学逻辑,其中 for-all 量词在空集上以这种方式工作。这在数学 SE 上的这个问题的答案中得到了解释:如果 SET 为空,为什么谓词“all” as in all(SET) 为真?
推荐阅读
- css - css display:grid 属性中的奇数列划分。当列数为奇数时,使最后 2 列的每个宽度为 50%
- kubernetes - Kubernetes 上的 NetworkPolicy 只允许 UI 与后端对话?
- javascript - 如何在 3D 画布中捕捉图像以及徽标和文本?
- python - 将 yaml 文件保存到生成器对象到字典 python
- oracle - ORA-01017: 无效的用户名/密码;使用容器 DOCKER 拒绝登录
- typescript - 为静态方法包含定义类型参数约束
- java - 问题理解静态嵌套类
- javascript - 如何使导出的变量在 Vue 组件中具有反应性?
- c# - 我怎样才能让它根据玩家移动的距离产生障碍?
- reactjs - 如何在 VS Code 中获得 React 本机函数自动完成功能