📜  c# 查找字符串数组中最小的字符串 - C# (1)

📅  最后修改于: 2023-12-03 15:13:51.955000             🧑  作者: Mango

C# 查找字符串数组中最小的字符串

在C#中,我们可以使用 LINQ 来快速地查找字符串数组中的最小值,以下是示例代码:

string[] array = { "apple", "banana", "cherry", "date" };
string minString = array.OrderBy(s => s).FirstOrDefault();
Console.WriteLine("The smallest string is: " + minString);

以上代码将输出:The smallest string is: apple

在这段代码中,我们使用了 OrderBy() 方法来对字符串数组进行排序。该方法接受一个 Lambda 表达式作为参数,表示按照什么规则进行排序。在这个例子中,我们按照字符串的字典序进行排序。然后,我们使用 FirstOrDefault() 方法来获取排序后的第一个元素,即最小字符串。

如果字符串数组为空, FirstOrDefault() 方法将返回 null。如果您需要处理此类情况,可以在 FirstOrDefault() 方法的参数中添加一个默认值,例如:

string minString = array.OrderBy(s => s).FirstOrDefault() ?? "Array is empty";

以上代码将在字符串数组为空时输出: Array is empty

以上是使用 LINQ 的方法。如果您不想使用 LINQ,可以使用以下方法:

string[] array = { "apple", "banana", "cherry", "date" };
string minString = array[0];
for (int i = 1; i < array.Length; i++)
{
    if (string.Compare(array[i], minString) < 0)
    {
        minString = array[i];
    }
}
Console.WriteLine("The smallest string is: " + minString);

这会输出和之前相同的结果:The smallest string is: apple

在这段代码中,我们遍历整个字符串数组,用 string.Compare() 方法比较每个字符串的大小,并跟踪最小值。最后,我们得到最小的字符串。

无论您使用哪种方法,都可以快速轻松地在C#中查找字符串数组中的最小值。