public delegate int ComPear(object o1, object o2);
class Program
{
static void Main(string[] args)
{
// Console.WriteLine("Hello World!");
object[] nums = { 1, 123, 5, 54, 457, 5567, 567, 345, 7, 123123 };
object Result = GetMax(nums, GetValue);
//lamda表达式
object Result1 = GetMax(nums, (object o1, object o2) =>
{
string s1 = (string)o1;
string s2 = (string)o2;
return s1.Length - s2.Length;
});
Console.WriteLine(Result);
Console.WriteLine(Result1);
Console.ReadKey();
}
public static object GetMax(Object[] nums,ComPear cp)
{
object max = nums[0];
for (int i = 0; i < nums.Length; i++)
{
if (cp(max,nums[i])<0)
{
max = nums[i];
}
}
return max;
}
public static int GetValue(object o1,object o2)
{
int n1 = (int)o1;
int n2 = (int)o2;
return n1 - n2;
}
}
委托求数组最大值,数组string最大长度
最新推荐文章于 2024-11-19 14:48:30 发布