Collections练习之按照字符串长度进行排序
代码需求
想从
[abcde, cba, aa, zzz, cba, nbaa]
变成
[aa, cba, cba, zzz, nbaa, abcde]
CollectionsDemo.java
package zhouls.bigdata.DataFeatureSelection.test;import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.TreeSet;import zhouls.bigdata.DataFeatureSelection.test.ComparatorByLength;public class CollectionsDemo {/*** @param args*/public static void main(String[] args) {/** Collections:是集合框架的工具类。* 里面的方法都是静态的。*/demo();}public static void demo(){List<String> list = new ArrayList<String>();list.add("abcde");list.add("cba");list.add("aa");list.add("zzz");list.add("cba");list.add("nbaa");System.out.println(list);//对list集合进行指定顺序的排序。 Collections.sort(list);mySort(list);mySort(list,new ComparatorByLength());Collections.sort(list,new ComparatorByLength());System.out.println(list);}public static <T> void mySort(List<T> list,Comparator<? super T> comp){for (int i = 0; i < list.size()-1; i++) {for (int j = i+1; j < list.size(); j++) {if(comp.compare(list.get(i), list.get(j))>0){T temp = list.get(i);list.set(i, list.get(j));list.set(j, temp);Collections.swap(list, i, j);}}}}public static <T extends Comparable<? super T>> void mySort(List<T> list){for (int i = 0; i < list.size()-1; i++) {for (int j = i+1; j < list.size(); j++) {if(list.get(i).compareTo(list.get(j))>0){ // T temp = list.get(i); // list.set(i, list.get(j)); // list.set(j, temp); Collections.swap(list, i, j);}}}} }
ComparatorByLength.java
package zhouls.bigdata.DataFeatureSelection.test;import java.util.Comparator;public class ComparatorByLength implements Comparator<String> {public int compare(String o1, String o2) {int temp = o1.length() - o2.length();return temp==0?o1.compareTo(o2): temp;} }
Collections练习之按照字符串长度进行排序相关推荐
- [C语言]使用指针将输入的多个字符串按长度升序排序
[C语言]使用指针将输入的多个字符串按长度升序排序 1.题目 2.完整代码 3.截图 1.题目 编写一个函数,利用指针将输入的多个字符串按长度升序排序 要求:子函数 void StrSort(char ...
- Java Array.sort 根据字符串长度排序
Array.sort 如何根据字符串长度排序? 这里的知识点包括: Array,sort() 函数.其第一个参数是要排序的数组,第二个参数是比较方法. lambda 表达式.其形式为 (参数) -&g ...
- python中对字符串的长度进行排序
前言 对字符串的长度进行排序很常见,本文用sorted()函数进行排序 一.代码部分 def main():dict={}ls=[]for i in range(5): #输入字符串的个数name=i ...
- 用TreeSet存储以下数据: “xiaoqiang”、 “zhangsan”、“lisi”、“xiaohua”、 “ruhua”、 “wangcai” 要求按照字符串的长度进行排序后再存储(如
用TreeSet存储以下数据: "xiaoqiang". "zhangsan"."lisi"."xiaohua". &q ...
- 二维字符数组按长度排序_字符串长度 字符数组长度
1.不带转义字符的字符 如:"abc!x=/",其长度为 7 2.带转义字符的字符串 (1) 字符串"abcn":其中的'n'为转义字符(换行符),计算字符串长 ...
- Collections、Set、Map、斗地主排序
Collections.Set.Map.斗地主排序 今日内容 Collections shuffle sort自然排序 比较器排序 可变参数[重] addall方法 Set接口 hashCode 哈希 ...
- Go 学习笔记(31)— 字符串 string、字符 rune、字节 byte、UTF-8 和 Unicode 区别以及获取字符串长度
1. 字符串 string 类型 Go 语言中字符串的内部实现使用 UTF-8 编码,通过 rune 类型,可以方便地对每个 UTF-8 字符进行访问.当然, Go 语言也支持按照传统的 ASCII ...
- Java黑皮书课后题第7章:**7.34(对字符串中的字符排序)使用以下方法头编写一个方法,返回一个排序好的字符串。编写一个测试程序,提示用户输入一个字符串,显示排序好的字符串
**7.34(对字符串中的字符排序)使用以下方法头编写一个方法,返回一个排序好的字符串.编写一个测试程序,提示用户输入一个字符串,显示排序好的字符串 题目 题目描述 破题 代码 运行实例 题目 题目描 ...
- python字符串排序_Python对字符串列表进行排序
在本教程中,我们将看到如何对字符串列表进行排序.我们将使用sort方法和sorted函数对给定的字符串列表进行排序.然后,我们将了解如何根据不同的条件(例如长度,值等)对字符串列表进行排序, 让我们看 ...
最新文章
- scikit-learn随机森林调参小结
- Codeforces Round #506 (Div. 3) - D. Concatenated Multiples(思维)
- JavaScript 语言基础知识点图示
- python导入pandas具体步骤方法_python导入pandas具体步骤方法-
- mvc crud_Spring MVC3 Hibernate CRUD示例应用程序
- HTML块,含样式的标签
- 一张图理清 Python3 所有知识点
- mysql视图_MySQL视图详解
- android studio创建构造方法,使用Android studio创建你的第一个项目
- TCL微型计算机如何投屏,TCL电视怎么投屏?3个办法帮助你完美解决
- 安全测试需要考虑的测试点
- 《从零开始走进FPGA》导读
- matlab运行为什么要选中代码,性能 – 为什么(在MATLAB中)这个代码更快?
- 单链表的逆置-C++实现(ok)
- hdfs-文件上传下载
- STM32+SIM800C采用MQTT协议登录OneNet上传温湿度、MQ2烟雾浓度、GPS数据
- 【USB】STM32模拟USB鼠标
- 大岩量化小白科普:什么是量化交易?什么是宽客?
- 电子计算机上面的mrc是什么意思,计算器中的M-键是什么功能?
- 1 同业拆出,和同业拆入的定义