c# - 如何在asp.net C#中按字母顺序对由逗号等特殊字符分隔的字符串进行排序
问题描述
在 C# 中,如何对以特殊字符分隔的字符串进行排序,例如“,”
例如我有这样的字符串
string sStates="IA,KY,CT,ME,AZ";
我怎样才能按字母顺序重新排序它们
"AZ,CT,IA,KY"
将它们拆分为一个数组将起作用。
但是有没有更有效的方法?
提前感谢您的帮助。
解决方案
这可以使用 linq 在一行代码中完成:
var result = string.Join(",", source.Split(",").OrderBy(s => s));
除非您在紧迫的时间线下为巨大的字符串(或大量的字符串)执行此操作,或者存在实际的性能问题,否则此处不应考虑效率方面的考虑。
可读代码比快速代码要好得多。
作为一项规则 -您应该为清晰而设计代码,而不是为了性能。编写代码,以尽可能最清晰的方式传达它正在实现的算法。设定性能目标并根据它们衡量代码的性能。如果您的代码无法达到您的性能目标,请找出瓶颈并加以处理。设计代码时,不要在纳米优化上浪费时间。
推荐阅读
- java - 命名扩展另一个抽象类的抽象类
- javascript - What is the best way to communicate and pass data between child polymer elements?
- python - python + sqlite 将变量插入 PRAGMA 语句
- laravel - 从自定义验证对象中检索参数
- ajax - 代码点火器验证-Ajax,错误:验证时功能工作->运行为真
- html - HTML - 按钮和输入
- python - 如何在 Eric6 中单独使用 Qt Designer 和 PyQt5 的离线文档?
- ruby-on-rails - Ruby on Rails - 权威宝石 - 未定义的方法
- c# - CORS 策略中不允许请求方法 POST
- ionic-framework - 离子闪屏在较旧的 android 上提供 ERR_CONNECTION_REFUSED