zoukankan      html  css  js  c++  java
  • 按长度排序字符串数组

     1 import java.util.Comparator;
     2 import java.util.Set;
     3 import java.util.TreeSet;
     4 
     5 public class SortString {
     6 
     7     public static void main(String[] args) {
     8         String[] strs = new String[] { "abcdef", "abcde", "abcdefg", "abc",
     9                 "abccd" };
    10 
    11         Set<String> set = sort(strs);
    12         for (String s : set)
    13             System.out.println(s);
    14     }
    15 
    16     private static Set<String> sort(String[] strs) {
    17         // TODO Auto-generated method stub
    18         Set<String> set = new TreeSet<>(new Comparator<String>() {
    19 
    20             @Override
    21             public int compare(String o1, String o2) {
    22                 // TODO Auto-generated method stub
    23                 if (o1.length() < o2.length())
    24                     return -1;
    25                 else if (o1.length() > o2.length())
    26                     return 1;
    27                 return o1.compareTo(o2);
    28             }
    29         });
    30 
    31         for (String s : strs)
    32             set.add(s);
    33 
    34         return set;
    35     }
    36 
    37 }

    如题:按字符串长度由短到长排序字符串,长度相同按照自然顺序进行排序,代码如上。

    分析:

    TreeSet具有排序功能,自定义比较器对字符串进行排序。

    也可以使用工具java.util.Arrays.sort(T[] a, Comparator<? super T> c)方法进行排序,自行实现

  • 相关阅读:
    Java_大数加法
    Java_找出最多的10个单词
    过滤文本敏感词
    JDK(Win10)下载与安装
    Agile PLM_统计物料消耗
    Java_扑克牌顺子
    Java8_stream_集合对象属性的合并
    Apache Maven下载与安装
    java泛型 无敌
    Java异常处理 无敌
  • 原文地址:https://www.cnblogs.com/joshua-aw/p/6011767.html
Copyright © 2011-2022 走看看