如何反转 Array.Sort 的方向 - C#

Posted

技术标签:

【中文标题】如何反转 Array.Sort 的方向 - C#【英文标题】:How to reverse the direction of Array.Sort - C# 【发布时间】:2020-10-27 23:28:11 【问题描述】:

我有一个简单的字符串数组,编号为 1 - 10,我将使用以下内容对其进行排序:

Array.Sort(StringArray, StringComparer.InvariantCulture);

我的问题是,如何将排序的方向从 1 - 10 升序更改为 10 - 1 降序?

【问题讨论】:

【参考方案1】:

有多种选择。 Here is the most common I use.

Linq over a List can also be used.

// C# program sort an array in  
// decreasing order using  
// CompareTo() Method 
using System; 
  
class GFG  
  
    // Main Method 
    public static void Main() 
     
  
        // declaring and initializing the array 
        int[] arr = new int[] 1, 9, 6, 7, 5, 9; 
  
        // Sort the arr from last to first. 
        // compare every element to each other 
        Array.Sort<int>(arr, new Comparison<int>( 
                  (i1, i2) => i2.CompareTo(i1))); 
  
        // print all element of array 
        foreach(int value in arr) 
         
            Console.Write(value + " "); 
         
     

// C# program sort an array in decreasing order 
// using Array.Sort() and Array.Reverse() Method 
using System; 
  
class GFG  
  
    // Main Method 
    public static void Main() 
     
  
        // declaring and initializing the array 
        int[] arr = new int[] 1, 9, 6, 7, 5, 9; 
  
        // Sort array in ascending order. 
        Array.Sort(arr); 
  
        // reverse array 
        Array.Reverse(arr); 
  
        // print all element of array 
        foreach(int value in arr) 
         
            Console.Write(value + " "); 
         
     
 

【讨论】:

【参考方案2】:

如果你想在 C# 中使用 Array 方法对数字进行排序,试试这个:

int[] arr = new int[] 1, 2, 3, 4, 5,6, 7, 8, 9, 10; 
Array.Sort(arr); //1 2 3 4 5 6 7 8 9 10     

Array.Reverse(arr); //10 9 8 7 6 5 4 3 2 1

【讨论】:

【参考方案3】:

刚刚发现这个...似乎很好用。

Array.Reverse(StringArray);   

【讨论】:

以上是关于如何反转 Array.Sort 的方向 - C#的主要内容,如果未能解决你的问题,请参考以下文章

ubuntu17.10鼠标滚轮方向反了,请问咋解决

如何在launch.json的Visual Studio Code中反转$ relativeFile中的反斜杠?

C#反序列化Json字符串

如何使用 C# 反转 XAML PNG 图像的颜色?

如何在 C# 中反转文本? [关闭]

如何将 viewPager 的方向反转为从左到右的顺序?