var strs = new Collection<string>();
bool b = strs.All(str => str == "ABC");
Run Code Online (Sandbox Code Playgroud)
代码创建一个空的字符串集合,然后尝试确定集合中的所有元素是否为"ABC".如果你运行它,b将是真的.
但是该集合甚至没有任何元素,更不用说任何等于"ABC"的元素了.
这是一个错误,还是有合理的解释?
在通过一些代码调试的过程中,我发现我验证的一个特定部分是使用.startsWith()String类上的方法检查String是否以空白字符开头
考虑以下因素:
public static void main(String args[])
{
String s = "Hello";
if (s.startsWith(""))
{
System.out.println("It does");
}
}
Run Code Online (Sandbox Code Playgroud)
打印出来 It does
我的问题是,为什么Strings以空白角色开始?我假设在引擎盖下Strings本质上是字符数组,但在这种情况下我会想到第一个字符H
有人可以解释一下吗?
我刚发现语句any('')返回逻辑0,而语句all('')返回逻辑1.
如果函数any不认为空字符串('')为非零,则函数all应该执行相同的操作,但是从结果来看,函数all似乎认为空字符串('')为非零.
顺便说一下,类似的事情发生在any(NaN)返回逻辑0而all(NaN)返回逻辑1的情况下.
这是一个MATLAB错误吗?
这是我正在使用的MATLAB的版本信息.
MATLAB版本:9.1.0.441655(R2016b)
MATLAB许可证编号:DEMO
c# ×2
java ×2
logic ×2
startswith ×2
.net ×1
enumerable ×1
linq ×1
matlab ×1
ruby ×1
string ×1