Open Source Your Knowledge, Become a Contributor

Technology knowledge has to be shared and made accessible for free. Join the movement.

Create Content

Min() and Max() methods

Very simply, the Min() method returns the minimum value from the source sequence and the Max() method returns the maximum value. As with the Sum() method, they can only be called on sequences containing numerical values.

IEnumerable<int> ints = new List<int> { 2, 2, 4, 6, 3, 6, 5 };
// Will return 6
int result = ints.Max();

Min(<selector>) and Max(<selector>) methods

Similar to the Sum() method, Min() and Max() can also be called with a selector delegate parameter. The provided delegate should take a parameter of type T and return a numerical value. The result of the Min() or Max() method call will be the minimum or maximum of all of these numerical values, as calculated for each element in the sequence. The type of the value returned from Min() or Max() matches the data type of the of the value returned from the selector.

IEnumerable<string> strings = new List<string> { "1.2", "1.3", "1.5", "0.6" };
// Will return 0.6
float result = strings.Min(str => float.Parse(str));

Min() / Max() exercise

In the following exercise, write a method that will return the length of the shortest string in the provided sequence as an integer value.

Min / Max Exercise
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
using System.Collections.Generic;
using System.Linq;
namespace SingleCalculatedValue1
{
public static class MinMax1
{
// Return the length of the shortest word
public static int LengthOfShortestWord(IEnumerable<string> words)
{
// Uncomment:
// return words.???();
}
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Open Source Your Knowledge: become a Contributor and help others learn. Create New Content