C# 按字母顺序和长度对 Arraylist 字符串进行排序

2023-12-10

我正在尝试排序ArrayList of String.

Given:

{A,C,AA,B,CC,BB}

Arraylist.Sort gives:

{A,AA,B,BB,C,CC}

我需要的是:

{A,B,C,AA,BB,CC}

ArrayList list = new ArrayList {"A","C","AA","B","CC","BB"};

var sorted = list.Cast<string>()
                 .OrderBy(str => str.Length)
                 .ThenBy(str => str);

//LinqPad specific print call
sorted.Dump();

prints:

A 
B 
C 
AA 
BB 
CC 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# 按字母顺序和长度对 Arraylist 字符串进行排序 的相关文章

  • 在模板类中声明模板友元类时出现编译器错误

    我一直在尝试实现我自己的链表类以用于教学目的 我在迭代器声明中指定了 List 类作为友元 但它似乎无法编译 这些是我使用过的 3 个类的接口 Node h define null Node
  • 通过引用传递 [C++]、[Qt]

    我写了这样的东西 class Storage public Storage QString key const int value const void add item QString int private QMap
  • 如何在 Cassandra 中存储无符号整数?

    我通过 Datastax 驱动程序在 Cassandra 中存储一些数据 并且需要存储无符号 16 位和 32 位整数 对于无符号 16 位整数 我可以轻松地将它们存储为有符号 32 位整数 并根据需要进行转换 然而 对于无符号 64 位整
  • std::list 线程push_back、front、pop_front

    std list 线程安全吗 我假设不是这样 所以我添加了自己的同步机制 我认为我有正确的术语 但我仍然遇到问题 每个函数都由单独的线程调用 Thread1 不能等待 它必须尽可能快 std list
  • free 和 malloc 在 C 中如何工作?

    我试图弄清楚如果我尝试 从中间 释放指针会发生什么 例如 看下面的代码 char ptr char malloc 10 sizeof char for char i 0 i lt 10 i ptr i i 10 ptr ptr ptr pt
  • 为什么 GCC 不允许我创建“内联静态 std::stringstream”?

    我将直接前往 MCVE include
  • 传递给函数时多维数组的指针类型是什么? [复制]

    这个问题在这里已经有答案了 我在大学课堂上学习了 C 语言和指针 除了多维数组和指针之间的相似性之外 我认为我已经很好地掌握了这个概念 我认为由于所有数组 甚至多维 都存储在连续内存中 因此您可以安全地将其转换为int 假设给定的数组是in
  • C++ 多行字符串原始文字[重复]

    这个问题在这里已经有答案了 我们可以像这样定义一个多行字符串 const char text1 part 1 part 2 part 3 part 4 const char text2 part 1 part 2 part 3 part 4
  • WPF 数据绑定到复合类模式?

    我是第一次尝试 WPF 并且正在努力解决如何将控件绑定到使用其他对象的组合构建的类 例如 如果我有一个由两个单独的类组成的类 Comp 为了清楚起见 请注意省略的各种元素 class One int first int second cla
  • 重载 (c)begin/(c)end

    我试图超载 c begin c end类的函数 以便能够调用 C 11 基于范围的 for 循环 它在大多数情况下都有效 但我无法理解和解决其中一个问题 for auto const point fProjectData gt getPoi
  • 结构体的内存大小不同?

    为什么第一种情况不是12 测试环境 最新版本的 gcc 和 clang 64 位 Linux struct desc int parts int nr sizeof desc Output 16 struct desc int parts
  • C# xml序列化必填字段

    我需要将一些字段标记为需要写入 XML 文件 但没有成功 我有一个包含约 30 个属性的配置类 这就是为什么我不能像这样封装所有属性 public string SomeProp get return someProp set if som
  • shell中如何分割字符串

    我有一个变量作为 string ABC400p2q4 我怎样才能分开ABC400 and p2q4 我需要将它分成两个变量 结果我得到 echo var1 ABC400 echo var2 p2q4 可以用任何字母字符代替 ABC 可以用任
  • 空指针与 int 等价

    Bjarne 在 C 编程语言 中写道 空指针与整数零不同 但 0 可以用作空指针的指针初始值设定项 这是否意味着 void voidPointer 0 int zero 0 int castPointer reinterpret cast
  • C++ 继承的内存布局

    如果我有两个类 一个类继承另一个类 并且子类仅包含函数 那么这两个类的内存布局是否相同 e g class Base int a b c class Derived public Base only functions 我读过编译器无法对数
  • 在python中,如何仅搜索所选子字符串之前的一个单词

    给定文本文件中的长行列表 我只想返回紧邻其前面的子字符串 例如单词狗 描述狗的单词 例如 假设有这些行包含狗 hotdog big dog is dogged dog spy with my dog brown dogs 在这种情况下 期望
  • 当文件流没有新数据时如何防止fgets阻塞

    我有一个popen 执行的函数tail f sometextfile 只要文件流中有数据显然我就可以通过fgets 现在 如果没有新数据来自尾部 fgets 挂起 我试过ferror and feof 无济于事 我怎样才能确定fgets 当
  • 为什么 std::uint32_t 与 uint32_t 不同?

    我对 C 有点陌生 我有一个编码作业 很多文件已经完成 但我注意到 VS2012 似乎有以下语句的问题 typedef std uint32 t identifier 不过 似乎将其更改为 typedef uint32 t identifi
  • C++ 中的参考文献

    我偶尔会在 StackOverflow 上看到代码 询问一些涉及函数的重载歧义 例如 void foo int param 我的问题是 为什么会出现这种情况 或者更确切地说 你什么时候会有 对参考的参考 这与普通的旧参考有何不同 我从未在现
  • Mono 应用程序在非阻塞套接字发送时冻结

    我在 debian 9 上的 mono 下运行一个服务器应用程序 大约有 1000 2000 个客户端连接 并且应用程序经常冻结 CPU 使用率达到 100 我执行 kill QUIT pid 来获取线程堆栈转储 但它总是卡在这个位置

随机推荐

  • 使用 PHP -> ODBC -> MS SQL 插入 Unicode 字符?

    我有以下代码 sql update tbl test set category N resum echo sql rs odbc exec conn sql 其中 conn 是到 MSSQL Server 的 DSN ODBC 连接 问题似
  • cloudstack启动主备存储失败

    我使用2台主机建立我的cloudstack集群 我的所有主机都是使用NFSv3的Ubuntu 12 04 我使用host1作为主存储服务器和辅助存储服务器 管理服务器也在host1中 我可以在host2上挂载host1的主存储和辅助存储 我
  • scanf 格式中的空白字符问题

    我使用 scanf 读取输入stdin因为 scanf 被认为比cin 我发现以下意外行为 for int i 0 i lt 3 i scanf d t printf The input was d n t The d 格式为scanf预计
  • 如何取消winform按钮点击事件?

    我有一个继承自 System Windows Forms Button 的自定义按钮类 我想在我的 winform 项目中使用这个按钮 该类称为 确认按钮 它显示带有 是 或 否 的确认消息 但问题是 当用户选择 否 并带有确认消息时 我不
  • 使用带有属性占位符值的 @Profile 注释

    当我们在 spring 中为任何组件定义 profile 时 我们将其声明为 Profile value Prod 但我想从属性文件中给出该值 是否可以 如果是 怎么办 通过查看Spring的源代码 我得出的结论是 你所要求的是不可能的 为
  • 如何使用ctypes的errcheck?

    The Python 库参考 版本 3 6 5 第 16 16 段 ctypes Python 的外部函数库 给出这个例子 证明输出参数 在部分函数原型 赢32获取窗口矩形功能 WINUSERAPI BOOL WINAPI GetWindo
  • Three.js:纹理全白

    编辑 以下gaitat的修复建议 我收到了一个新错误 现在该框根本不显示 我写过一个新问题来演示此错误 我有一个简单的盒子几何形状 我试图用纹理来装饰它 然而 我得到的只是一个 100 的白盒子 我写过一个简单的测试站点来论证这个问题 这是
  • 鼠标移开时隐藏 div

    我有两个 div 一个用于简短摘要 一个用于长摘要 当我将鼠标悬停在简短摘要上时 简短摘要消失并出现长摘要 当我从长摘要中 鼠标移开 时 它应该消失 而简短摘要应该出现 问题是 当我仍在长摘要的边界内但不在排序摘要的位置时 会发生 mous
  • 生成可种子数据的随机字符串

    我正在寻找一种生成随机字符串的方法nPython 中的字节类似于os urandom 方法 除了提供一种数据生成种子的方法 到目前为止我有 def genRandData size buf chr random randint 0 255
  • 该进程无法访问该文件,因为该文件正在被另一个进程使用

    我有来自特定目录的 tif 文件 我有一个函数可以读取所有 tif 文件并将其转换为文本 转换后 一旦成功转换 我将其移动到名为 Completed 的文件夹 然后将其移动失败文件夹一旦转换失败 问题是当我使用 System IO File
  • 在 C++ 中如何实现从 int 到 object 的赋值?

    class phone public phone int x num x int number void return num void number int x num x private int num int main void ph
  • 找到矩阵中的主对角线 - 方案

    我需要从方阵中提取主对角线 1 2 3 4 5 6 gt 1 5 9 7 8 9 我有以下代码 我需要替换 具有适当的功能 define diag m if null m cons m diag map m Input diag 1 2 3
  • 我如何使用 python 从键盘发送命令。我正在尝试自动化 mac 应用程序 (GUI)

    我正在尝试使用 python 自动化应用程序 我需要帮助通过 python 发送键盘命令 我正在使用 powerBook G4 您可以使用 osascript 工具从 python 脚本调用 AppleScript import os cm
  • 如何查找 PDF 中所有出现的特定文本并在上方插入分页符?

    我对 PDF 有一个棘手的要求 我需要在 pdf 中搜索特定字符串 属性编号 每次找到这个 我都需要在上面添加一个分页符 我可以访问 IText 和 Spire PDF 我首先查看 IText 我从这里的其他帖子中确定我需要使用 PDF S
  • 保留实体框架查询缓存

    我有一个 ASP NET MVC 5 Web 应用程序并使用 EF 6 1 访问我的数据库 我有一些相当复杂的 LINQ 查询 编译需要长达 10 秒的时间 但执行后只需几毫秒 EF 确实会很好地缓存此查询 并且第二次执行查询时 它会在这几
  • 从 Mac 测试 IE 的最佳工具 - 无需 PC [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 测试网站设计的跨浏览器兼容
  • 两个带有 count 的语句相除返回零

    我是 SQL 新手 使用 SQLiteStudio 并且正在尝试使用一些聚合函数 我想找到数据子集中个体数量小于 575 的比例 但查询始终返回零 SELECT A B 100 FROM SELECT COUNT AS A FROM Mal
  • 使用 RequestBody 的 POST 请求不起作用

    在下面的示例中 我使用 POST 和 GET 方法 post 是初始化一个变量 GET 是获取这个变量 我使用 Postman 来发出请求 我收到错误 RequestBody value val cant resolve method va
  • 使用自定义属性有效吗?

    我想取消任何链接并为每个链接添加额外的属性 下面是我是如何实现这一目标的 function anularEnlaces nav a each function var href this attr href var id this attr
  • C# 按字母顺序和长度对 Arraylist 字符串进行排序

    我正在尝试排序ArrayList of String Given A C AA B CC BB Arraylist Sort gives A AA B BB C CC 我需要的是 A B C AA BB CC ArrayList list