首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sort List<String[]>

Sort List<String[]>
EN

Stack Overflow用户
提问于 2011-01-21 03:52:49
回答 2查看 3.7K关注 0票数 5

如何按字符串中的值按字母数字顺序对列表进行排序

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-01-21 03:55:23

试一试

代码语言:javascript
复制
list.Sort((s, t) => String.Compare(s[0], t[0]));

这将按list中每个数组的第一个元素按字典顺序排序。

因为我不知道你说的“字母数字”是什么意思,如果你需要一个自定义字符串比较路由,你应该这样做:

代码语言:javascript
复制
class MyStringComparer : IComparer<string> {
    public int Compare(string s, string t) {
        // details elided
    }
}

然后

代码语言:javascript
复制
var comparer = new MyStringComparer();
list.Sort((s, t) => comparer.Compare(s[0], t[0]));
票数 14
EN

Stack Overflow用户

发布于 2011-01-21 04:17:06

这是一个非常简单的/伪代码示例……在这里真的伸展了。

代码语言:javascript
复制
MyclassZeroIndexComparer : IComparable, IList(Of String[])
{
  private List<String[]> listOfStringArrays;

  //expose this as a public member somewhere...
  private List<String[]> listofStringArrayZeroIndex; 

  //internally store a list of only the first item you want to index....
  //implement your own, add,remove,clear

  void Add(foo item)
  {
    listofStringArrays.Add(Item);
    listofStringArrayZeroIndex.add(item[0]); 
  }

  // continue implementing other methods in the same manner.
}
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4751866

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档