这可以使用lambda表达式很好地完成.
对于一个名为arr:
var allSame = Array.TrueForAll(arr, x => x == arr[0]);
Run Code Online (Sandbox Code Playgroud)
对于list(List<T>),命名为lst:
var allSame = lst.TrueForAll(x => x == lst[0]);
Run Code Online (Sandbox Code Playgroud)
对于iterable(IEnumerable<T>),命名为col:
var first = col.First();
var allSame = col.All(x => x == first);
Run Code Online (Sandbox Code Playgroud)
请注意,这些方法不处理空数组/列表/迭代.然而,这种支持是微不足道的.
怎么样......
string numArray = "1,1,1,1,1";
return numArrray.Split( ',' ).Distinct().Count() <= 1;
Run Code Online (Sandbox Code Playgroud)