zoukankan      html  css  js  c++  java
  • C#字符串数组排序

    //排序只带字符的数组,不带数字的
    private   string[]   aa   ={ "a ", "c ", "b "}; 
    Array.Sort(aa); 
        MessageBox.Show(aa[0]); 
        MessageBox.Show(aa[1]); 
        MessageBox.Show(aa[2]); 
    
    结果是:a,b,c
    

    如果想实现

    Array.Sort(arr);
    不对!!!!!!!!!!
    比如:   A1,A2,A10
    用Array.Sort(arr);排出来就是
    A1,A10,A2
    而我要的是
    A1,A2,A10

    这样就可以了: 
    public   class   CustomComparer:System.Collections.IComparer 
    { 
    public   int   Compare(object   x,   object   y){ 
    string   s1   =   (string)x; 
    string   s2   =   (string)y; 
    if   (s1.Length   >   s2.Length)   return   1; 
    if   (s1.Length   <   s2.Length)   return   -1; 
    for   (int   i   =   0;   i   <   s1.Length;   i++)   { 
    if   (s1[i]   >   s2[i])   return   1; 
    if   (s1[i]   <   s2[i])   return   -1; 
    } 
    return   0; 
    } 
    } 
    
    应用: 
    string[]   str   =   new   string[]{ "A1 ", "A2 ", "A10 "}; 
    Array.Sort(str,   new   CustomComparer()); 
    for   (int   i   =   0;   i   <   str.Length;   i++) 
    Console.WriteLine(str[i]);
    

     但是这样不对带有字符的字符排序。

  • 相关阅读:
    单元测试
    软件测试计划
    软件杯A9的设计与实现
    阅读笔记7
    阅读笔记6
    阅读笔记5
    阅读笔记4
    阅读笔记3
    阅读笔记2
    阅读笔记1
  • 原文地址:https://www.cnblogs.com/xiaofengfeng/p/2441510.html
Copyright © 2011-2022 走看看