集合框架-TreeSet-Comparator比较器练习(字符串长度排序)

1 package cn.itcast.p5.treeset.test;
2
3 import java.util.Iterator;
4 import java.util.TreeSet;
5
6 import cn.itcast.p5.comparator.ComparatorByLen;
7 /*
8 * 对字符串进行长度排序
9 */
10 public class TreeSetTest {
11
12 public static void main(String[] args) {
13 // TODO Auto-generated method stub
14 TreeSet ts = new TreeSet(new ComparatorByLen());
15
16 ts.add("aaaaa");
17 ts.add("zz");
18 ts.add("nbaq");
19 ts.add("cba");
20 ts.add("abc");
21
22 Iterator it = ts.iterator();
23
24 while(it.hasNext()) {
25 System.out.println(it.next());
26 }
27 }
28
29 }
Test

1 package cn.itcast.p5.comparator;
2
3 import java.util.Comparator;
4
5 public class ComparatorByLen implements Comparator {
6
7 @Override
8 public int compare(Object o1, Object o2) {
9 // TODO Auto-generated method stub
10 String s1 = (String)o1;
11 String s2 = (String)o2;
12 int temp = s1.length()-s2.length();
13
14 return temp==0?s1.compareTo(s2):temp;
15
16 }
17
18 }
ComparatorByLen
集合框架-TreeSet-Comparator比较器练习(字符串长度排序)的更多相关文章
- java 集合框架(TreeSet操作,自动对数据进行排序,重写CompareTo方法)
/*TreeSet * treeSet存入数据后自动调用元素的compareTo(Object obj) 方法,自动对数据进行排序 * 所以输出的数据是经过排序的数据 * 注:compareTo方法返 ...
- Java TreeSet集合排序 && 定义一个类实现Comparator接口,覆盖compare方法 && 按照字符串长度排序
package TreeSetTest; import java.util.Iterator; import java.util.TreeSet; import javax.management.Ru ...
- 集合框架-TreeSet
TreeSet是Set集合的常见子类. TreeSet:底层结构是 二叉树 元素是有排序的,但是不可以有重复元素. 相关代码演练: /* TreeSet ;元素是有序的,但是不可以元素重复. */ i ...
- 集合框架-TreeSet集合
1 package cn.itcast.p5.treeset.demo; 2 3 import java.util.Iterator; 4 import java.util.TreeSet; 5 6 ...
- Java基础知识强化之集合框架笔记44:Set集合之TreeSet保证元素唯一性和自然排序的原理和图解
1. TreeSet保证元素唯一性和自然排序的原理和图解 2. TreeSet唯一性以及有序性底层剖析: 通过观察TreeSet的add()方法,我们知道最终要看TreeMap的put()方法. 跟踪 ...
- 【Java学习笔记】<集合框架>TreeSet,Comparable,Comparator
public class Person implements Comparable{ private String name; private int age; public Person(){ su ...
- 《java入门第一季》之集合框架TreeSet存储元素自然排序以及图解
这一篇对TreeSet做介绍,先看一个简单的例子: * TreeSet:能够对元素按照某种规则进行排序. * 排序有两种方式 * A:自然排序: 从小到大排序 * B:比较器排序 Comp ...
- 集合框架-TreeSet集合-二叉树
1 package cn.itcast.p5.treeset.demo; 2 3 import java.util.Iterator; 4 import java.util.TreeSet; 5 6 ...
- php 对数组按照字符串长度排序
$file = file('zong.txt'); usort($file, 'sortByLen'); $handle = fopen('zong2.txt', 'a'); foreach ($fi ...
随机推荐
- 【LeetCode】913. Cat and Mouse 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 参考资料 日期 题目地址:https://leetc ...
- Java Web大作业——编程导航系统
title: Java Web大作业--编程导航系统 categories: - - 计算机科学 - Java abbrlink: 40bc48a1 date: 2021-12-29 00:37:35 ...
- [opencv]膨胀腐蚀
Mat dilateimg; Mat element = getStructuringElement(MORPH_RECT, Size(3, 3)); dilate(canny, dilateimg, ...
- 制作四个选项卡页 Tab,用户可以通过切换不同的 Tab 页查看不同类别的新闻信息,每个 Tab 有对应的内容版块,点击某个选项卡时,显示对应的内容版块,隐藏其他内容版块,并且为了突出当前的选项卡,还
查看本章节 查看作业目录 需求说明: 制作四个选项卡页 Tab,用户可以通过切换不同的 Tab 页查看不同类别的新闻信息,每个 Tab 有对应的内容版块,点击某个选项卡时,显示对应的内容版块,隐藏其他 ...
- MySQL数据操作与查询笔记 • 【第6章 聚合函数和分组查询】
全部章节 >>>> 本章目录 6.1 sum.max 和 min 聚合函数 6.1.1 聚合函数介绍 6.1.2 sum 函数 6.1.3 max/min 函数 6.2 a ...
- 1.spring系列之优雅的实现接口统一返回
好处 现在公司开发基本上都是以前后分离模式为主,所以要有个统一的数据格式,这样有什么好处呢? 能够提高前后端对接的效率(特别重要) 代码更加优雅和简洁 对于前端和后端维护更方便容易 实现(直接上代码) ...
- MySQL8.0.20安装详解
https://blog.csdn.net/yeb112233/article/details/106042867/ alter user root@localhost identified by ' ...
- 微服务探索之路01篇.net6.0项目本地win10系统docker到服务器liunx系统docker的贯通
本文介绍从创建 net6.0 项目运行在 windows 开发环境的 docker 然后正式部署至 liunx 服务器. 1 windows10 安装 docker 下载docker-desktop ...
- CSS基础 元素整体透明效果(包含内容+背景及子元素)
属性名:opacity:数字+px; 数字值取值0-1之间数字 数字值:1表示完全不透明 0表示完全透明使用后效果 html结构代码 <div class="box"> ...
- Springboot+Javamail实现邮件发送
Springboot+Javamail实现邮件发送 使用的是spring-context-support-5.2.6.RELEASE.jar里的javamail javamail 官方文档:javam ...