温馨提示×

c# set集合 支持排序吗

c#
小樊
82
2024-12-04 04:20:43
栏目: 编程语言

是的,C# 中的 HashSet<T> 集合不支持排序。HashSet<T> 是一个无序的集合,它不允许重复元素,并且不保证元素的顺序。

如果你需要对集合中的元素进行排序,可以使用 List<T>SortedSet<T> 集合。List<T> 是一个有序的集合,你可以使用 List<T>.Sort() 方法对集合中的元素进行排序。SortedSet<T> 是一个有序的集合,它会自动对元素进行排序,你不需要手动进行排序操作。

以下是一个示例,展示了如何使用 List<T> 对集合中的元素进行排序:

using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        // 创建一个包含整数的 HashSet
        HashSet<int> hashSet = new HashSet<int> { 3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5 };

        // 将 HashSet 转换为 List
        List<int> list = new List<int>(hashSet);

        // 对 List 进行排序
        list.Sort();

        // 输出排序后的 List
        Console.WriteLine("Sorted List:");
        foreach (int item in list)
        {
            Console.WriteLine(item);
        }
    }
}

输出结果:

Sorted List:
1
1
2
3
3
4
5
5
5
6
9

0