这是一个关于编译器/语言如何处理这个问题的问题。 采取以下代码:来自字符串数组的C#max()并不总是最大的数字
Console.WriteLine("Enter some numbers separated by ",");
var numbers = Console.ReadLine();
var splitNumber = numbers.Split(',');
var maxNumber = splitNumber.Max();
Console.WriteLine("highest is: " + maxNumber);
输入一个字符串,如“1,2,3,4,5”将输出5作为最大数量。 然而,使用“1,2,3,5,5,6”输出6.而“33,1,4,1”给出了4.奇怪的是,“33,1,2,3”给出了33.
我知道有一个更好/更简单/不同的使用循环的方式。我完全错过了编译器如何处理这些字符串以确定输出。有人可以解释吗?或者提供一个参考来查看它?
注意'splitNumber'是String' – CinCout