龙空技术网

C#不同的方法来获取一个数组中的最大值

我是路马 729

前言:

此刻小伙伴们对“java数组求最大值”大体比较关心,小伙伴们都想要知道一些“java数组求最大值”的相关资讯。那么小编在网络上收集了一些对于“java数组求最大值””的相关知识,希望咱们能喜欢,咱们快快来了解一下吧!

首先我们来建一个Console工程

我们调用Random类来产生50个随机数保存在一个int数组里面,再编写一个GetMax方法来获取最大值

运行结果:

接下来,我们改一改

运行结果:

最后贴出完整的代码:

static void Main(string[] args)

{

Random rnd = new Random();

int[] array = new int[50];

for (int i = 0; i < array.Length; i++)

{

array[i] = rnd.Next(0, 10001);

}

Console.WriteLine("数组中的数为:");

foreach (var item in array)

{

Console.Write(item + " ");

}

Console.WriteLine("");

Console.WriteLine("数组中最大的数是: {0}", GetMax(array));

//用委托来实现 我们知道List泛型集合有个方法Max()

//所以我们将数组先添加到List<int>泛型集合再调用Max()方法来实现

Func<int[], int> getMax2 = new Func<int[], int>(arr => { return new List<int>(arr).Max(); });

Console.WriteLine("第二种方法得到数组中最大的数是: {0}", getMax2(array));

//我们知道Array类有个方法sort()可以将成员排序,默认是升序排列,

//所以我们排序之后取得最后一个成员就是最大值,如下:

Array.Sort(array);

Console.WriteLine("第三种方法得到数组中最大的数是: {0}", array[array.Length-1] );

//将上面方法改成委托的形式来调用

Func<int[], int> getMax3 = new Func<int[], int>(arr => {

Array.Sort(arr); return arr[arr.Length - 1]; });

Console.WriteLine("第三种方法改成委托调用得到数组中最大的数是: {0}", getMax3(array));

Console.ReadLine();

}

public static int GetMax(int[] arr)

{

int max = 0;

//找出最大数

foreach (var item in arr)

{

max = item > max ? max = item : max;

}

return max;

}

标签: #java数组求最大值