当前位置: 首页 > article >正文

[C#] 如何对列表,字典等进行排序?

对列表进行排序

下面是一个基于C#的列表排序的案例:

using System;
using System.Collections.Generic;

class Program
{
    static void Main(string[] args)
    {
        // 创建一个列表
        List<int> numbers = new List<int>() { 5, 2, 8, 1, 10 };

        // 使用Sort方法对列表进行升序排序
        numbers.Sort();

        // 打印排序后的列表
        foreach (int number in numbers)
        {
            Console.WriteLine(number);
        }

        // 使用Reverse方法对列表进行降序排序
        numbers.Reverse();

        // 打印排序后的列表
        foreach (int number in numbers)
        {
            Console.WriteLine(number);
        }
    }
}

这个案例演示了对一个整数列表进行排序的过程。首先,使用Sort方法对列表进行升序排序,然后遍历列表并打印排序后的结果。接着,使用Reverse方法对列表进行降序排序,并再次遍历并打印结果。

输出结果:

1
2
5
8
10
10
8
5
2
1

对字典进行排序

在C#中,可以使用OrderBy方法对字典进行排序。下面是一个对字典按键值进行升序排序的示例:

using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        Dictionary<string, int> dictionary = new Dictionary<string, int>();
        dictionary.Add("apple", 2);
        dictionary.Add("banana", 1);
        dictionary.Add("orange", 3);

        var sortedDictionary = dictionary.OrderBy(x => x.Key);

        foreach (var item in sortedDictionary)
        {
            Console.WriteLine(item.Key + ": " + item.Value);
        }
    }
}

输出结果:apple: 2
banana: 1
orange: 3

如果要根据值进行排序,可以将OrderBy的委托参数改为x => x.Value


http://www.kler.cn/news/234044.html

相关文章:

  • 4、解构三个重要的Pipeline(SD-Inpainting, ControlNet, AnimateDiff) [代码级手把手解析diffusers库]
  • redis过期淘汰策略、数据过期策略与持久化方式
  • Multisim14.0仿真(五十五)汽车转向灯设计
  • 骨科器械行业分析:市场规模为360亿元
  • 7 scala的类构造器
  • 物联网数据隐私保护技术
  • Java:JDK8新特性(Stream流)、File类、递归 --黑马笔记
  • MySQL数据库应用实验报告——实验1 表结构创建
  • 疑似针对安全研究人员的窃密与勒索
  • Element-ui date-picker组件报错 date.getHours is not a function
  • Lua: 一门轻量级、高效的脚本语言
  • HiveSQL——借助聚合函数与case when行转列
  • 【Java】案例:检测MySQL是否存在某数据库,没有则创建
  • DC-8靶机渗透详细流程
  • 怎么用postman调用webservice(反推SoapUI)
  • Ubuntu上开启SFTP服务教程
  • 软件安全测试报告如何编写?权威的安全测试报告如何获取?
  • Hive-架构与设计
  • CNN应用Keras Tuner寻找最佳Hidden Layers层数和神经元数量
  • vue3跨组件(多组件)通信:事件总线【Event Bus】
  • 修改GI文件的权限
  • 双活工作关于nacos注册中心的数据迁移
  • C#系列-C#访问MongoDB+redis+kafka(7)
  • Avalonia学习(二十三)-大屏
  • 方格定位2_题解
  • Qt安装配置教程windows版(包括:Qt5.8.0版本,Qt5.12,Qt5.14版本下载安装教程)(亲测可行)
  • STM32 FSMC (Flexible static memory controller) 灵活静态内存控制器介绍
  • Android java基础_类的继承
  • python如何用glob模块匹配路径
  • Lua Global环境