在我的主要内容中,这个数组包含随机数
static void Main(string[] args)
{
int [] numbers = new int[] { 1, 6, 4, 11, 2, 5, 9, 3, 7, 10, 12, 8 };
Console.WriteLine("The scores are: ");
for (int i = 0; i < numbers.Length; i++)
{
Console.WriteLine(numbers[i]);
Console.ReadLine();
}
我需要在一个类中创建一个静态方法,重新排列这些数字,以便它们按顺序排列,我不知道如何做到这一点。我需要交换这些数字。
答案 0 :(得分:9)
使用Array.Sort对原始数组进行排序:
Array.Sort(numbers);
或Enumerable.OrderBy创建新的排序序列,您可以将其保存到数组:
int[] sorted = numbers.OrderBy(i => i).ToArray();
答案 1 :(得分:4)
Array
类有一个Sort method (Array)
,它将数组作为参数。
使用。对整个一维数组中的元素进行排序 数组中每个元素的IComparable实现。
这是LINQPad;
的示例void Main()
{
int [] numbers = new int[] { 1, 6, 4, 11, 2, 5, 9, 3, 7, 10, 12, 8 };
ReturnSortedArray(numbers);
foreach (var element in numbers)
{
element.Dump();
}
}
static void ReturnSortedArray(Array a)
{
Array.Sort(a);
}
输出将是;
1
2
3
4
5
6
7
8
9
10
11
12
答案 2 :(得分:2)
要回答以下问题:如何创建静态方法来对数组进行排序,您可以使用下面的代码。
public static void Main(string[] args)
{
int[] numbers = new int[] { 1, 6, 4, 11, 2, 5, 9, 3, 7, 10, 12, 8 };
Console.WriteLine ("The scores are: ");
for (int i = 0; i < numbers.Length; i++)
{
Console.WriteLine (numbers [i]);
}
Console.WriteLine ("The scores in order are: ");
SortArray (numbers);
for (int i = 0; i < numbers.Length; i++)
{
Console.WriteLine (numbers [i]);
}
Console.ReadLine ();
}
public static int[] SortArray(int[] arrayIn)
{
Array.Sort (arrayIn);
return arrayIn;
}
<强>输出强>
分数是: 1 6 4 11 2 5 9 3 7 10 12 8 得分是: 1 2 3 4 5 6 7 8 9 10 11 12
答案 3 :(得分:1)
你可以在这里排序
Array.Sort(numbers);