Java中RGBtoHSB_HSV/HSB颜色排序列表
蛮力方式:
public final class ColorComparator implements Comparator {
@Override
public int compare(Color c1, Color c2) {
float[] hsb1 = Color.RGBtoHSB(c1.getRed(), c1.getGreen(), c1.getBlue(), null);
float[] hsb2 = Color.RGBtoHSB(c2.getRed(), c2.getGreen(), c2.getBlue(), null);
if (hsb1[0] < hsb2[0])
return -1;
if (hsb1[0] > hsb2[0])
return 1;
if (hsb1[1] < hsb2[1])
return -1;
if (hsb1[1] > hsb2[1])
return 1;
if (hsb1[2] < hsb2[2])
return -1;
if (hsb1[2] > hsb2[2])
return 1;
return 0;
}
}
一个非常简单的,没有想到办法做到这一点,如果你可以使用谷歌番石榴库为:
public final class ColorComparator extends Ordering {
@Override
public int compare(Color c1, Color c2) {
float[] hsb1 = Color.RGBtoHSB(c1.getRed(), c1.getGreen(), c1.getBlue(), null);
float[] hsb2 = Color.RGBtoHSB(c2.getRed(), c2.getGreen(), c2.getBlue(), null);
return ComparisonChain.start().compare(hsb1[0], hsb2[0]).compare(hsb1[1], hsb2[1])
.compare(hsb1[2], hsb2[2]).result();
}
}
我在说的只是环数组并对它们进行比较(或者使用Guava中的词典排序),但是您可能想要改变排序顺序。
Java中RGBtoHSB_HSV/HSB颜色排序列表相关推荐
- java中如何对对象排序?
大家好,我是雄雄. 前言: 我们知道,在平时做项目的过程中,我们总会用到各种各样的排序,或是升序,或是降序.在java中,要实现排序有好多中方式,比如我们耳熟能详的冒泡排序.选择排序等,但是我们一般都 ...
- java中的五种排序方法_用Java排序的五种有用方法
java中的五种排序方法 Java排序快速概述: 正常的列表: private static List VEGETABLES = Arrays.asList("apple", &q ...
- Java中怎样创建数据库_在java中怎样创建MySQL数据库列表给个例子 爱问知识人
java中怎样创建MySQL数据库列表 需要使用jdbc访问数据库. 具体步骤如下: 1:加载驱动 ,返回连接 private static final String DRIVER_CLASS = & ...
- [转载] java中对数组进行排序_如何在Java中对数组排序
参考链接: Java中main()的有效变体 java中对数组进行排序 Java Array is like a container that can hold a fixed number of t ...
- java中对数组进行排序_如何在Java中对数组排序
java中对数组进行排序 Java Array is like a container that can hold a fixed number of the same type of items, ...
- JAVA中JVM的重排序详细介绍(写得很明白)
刚刚在研究volatile变量的时候,涉及到重排序的概念,于是发现了这篇很好的文章,写得很简短很明白.所以转载一下. 原文地址:JAVA中JVM的重排序详细介绍 原文贴出来: 重排序通常是编译器或运行 ...
- JAVA中的集合与排序
一:常见的集合类 Collection接口 和 Map接口 Collection ①:collection是最常见的集合的上级接口. ②:继承自collection的常用接口有List,Set, ...
- java compareto方法怎么排序的_深入理解Java中Comparable和Comparator排序
本文有牛旦教育原创,头条首发,转载注明来源. 如何为需要的排序算法选择正确的接口?通过本文的分析讲解,我们会找到答案参考答案. 程序员经常需要将数据库中的元素排序为集合.数组或映射.在Java中,我们 ...
- Java中实现的各种排序算法
Java中的冒泡排序算法 package cn.edu.hactcm; /** * 冒泡排序算法 */ public class BubbleSortDemo { public static void ...
最新文章
- 电脑安装python失败-解决“Windows 7 Python3.6 安装失败”问题
- 获取网络时间并刷新本地时间(源码2)
- when is MethodInterceptorFilter created Java反射研究
- rsync 配置详解
- java 联合_如何在java中进行联合,相交,区分和反向数据
- python seaborn 散点图矩阵_Kaggle、Python数据可视化seaborn(四):散点图
- lstm训练情感分析的优点_「情感分析领域」简单调研
- 现在出纳记账手写还是用计算机,出纳现金日记账的手写样本
- 在线世界地图生成器 pixelmap可调色
- 智慧酒店客房控制系统开发提高酒店管理效率和服务质量
- 计算机硬盘介绍,硬盘简介 - 硬盘使用知识大全(1)
- internet信息服务器管理器,细述Win10系统上开启internet信息服务(iis)管理器的操作步骤...
- 《Python股票量化交易从入门到实践》学习记录
- 怎么给照片加水印?今天教你一个方法
- 从0到1 用腾讯云低代码开发一个问卷小程序(基于模版中心二开)
- 如何用几何画板画绕点旋转动画
- 【C语言经典100题】求a+aa+aaa+....的值
- 解决ios浏览器视频无法播放问题
- Java 性能调优 概念详解 小白教程
- 驻极体MIC并联与串联
热门文章
- 至简设计系列_按键控制数字时钟
- 小米商城项目——首页跳转到登录页面或注册页面的制作分析
- python中div是什么意思_python中divmod是什么
- leetcode 19. 删除链表的倒数第 N 个结点(c++)
- App启动就闪退引发的深思
- 人工智能导论——遗传算法求解TSP问题实验
- 阿里巴巴java工程师应聘条件_【全国】—前端/Java工程师—阿里巴巴(长期招聘)...
- CentOS7密码忘记如何强制修改root密码
- Arduino+nRF24L01接收端(二)
- 使用stream流进行集合排序取最大值,根据集合中的bigdemal属性排序(正序反序)并取最大值