Classificar un array em ordem decrescente em C#
-
Use o método
Array.Sort()
eArray.Reverse()
para classificar un array em ordem decrescente emC#
-
Use o método
OrderByDescending()
para classificar un array em ordem decrescente emC#
Este artigo apresentará diferentes métodos para classificar un array em ordem decrescente em C#.
Use o método Array.Sort()
e Array.Reverse()
para classificar un array em ordem decrescente em C#
Usaremos os dois métodos Array.sort()
e Array.Reverse()
coletivamente para classificar un array em ordem decrescente. O método Array.Sort()
classifica a matriz em ordem crescente. Iremos inverter a matriz usando o método Array.Reverse()
para classificar nossa matriz em ordem decrescente. Existem várias sobrecargas desses métodos. A sintaxe correta para usar esses métodos é a seguinte.
Array.Sort(Array array);
Esta sobrecarga do método Sort()
possui apenas um parâmetro. O detalhe de seu parâmetro é o seguinte
Parâmetros | Descrição | |
---|---|---|
array |
obrigatoriedade | Esta é a matriz que desejamos classificar. |
Esta função classifica a matriz em ordem crescente.
Array.Reverse(Array array);
Esta sobrecarga do método Reverse()
possui apenas um parâmetro. O detalhe de seu parâmetro é o seguinte.
Parâmetros | Descrição | |
---|---|---|
array |
obrigatoriedade | Esta é a matriz que desejamos reverter. |
Esta função inverte o array fornecido.
O programa abaixo mostra como podemos usar os métodos Sort()
e Reverse()
para classificar um array em ordem decrescente.
using System;
class Sort {
public static void Main() {
int[] arr = new int[] { 2, 10, 5, 8, 4, 11 };
Console.WriteLine("Array Before Sorting:\n");
foreach (int value in arr) {
Console.Write(value + " ");
}
Console.WriteLine("\n");
Array.Sort(arr);
Array.Reverse(arr);
Console.WriteLine("Array After Sorting:\n");
foreach (int value in arr) {
Console.Write(value + " ");
}
}
}
Resultado:
Array Before Sorting :
2 10 5 8 4 11
Array After Sorting :
11 10 8 5 4 2
Use o método OrderByDescending()
para classificar un array em ordem decrescente em C#
Em C#, também podemos usar o método OrderByDescending()
do LINQ para classificar un array em ordem decrescente. Existem várias sobrecargas deste método. A sobrecarga que usaremos tem dois parâmetros. A sintaxe correta para usar esse método é a seguinte.
Array.OrderByDescending(source, keySelector);
Os detalhes de seus parâmetros são os seguintes
Parâmetros | Descrição | |
---|---|---|
source |
É a sequência de valores a serem solicitados. | |
keySelector |
É a função de extrair uma chave de um elemento. |
Esta função classifica a matriz e retorna um IOrderedEnumerable. Vamos convertê-lo em um array usando o método ToArray()
.
O programa abaixo mostra como podemos usar o método OrderByDescending()
para classificar um array em ordem decrescente.
using System;
using System.Linq;
class Sort {
public static void Main() {
int[] arr = new int[] { 2, 10, 5, 8, 4, 11 };
Console.WriteLine("Array Before Sorting:\n");
foreach (int value in arr) {
Console.Write(value + " ");
}
Console.WriteLine("\n");
arr = arr.OrderByDescending(c => c).ToArray();
Console.WriteLine("Array After Sorting:\n");
foreach (int value in arr) {
Console.Write(value + " ");
}
}
}
Resultado:
Array Before Sorting :
2 10 5 8 4 11
Array After Sorting :
11 10 8 5 4 2