Arrays.sort()降序排序
默认的Java.util包中的Arrays.sort(),可以实现对java中的基本数据类型(byte、char、short、int、long、float、double、boolean)的数组进行升序排序。但如果要实现降序排列,则需要借助比较器Comparator。
注: 1. 要逆序排列的数组,不能使用基本数据类型,必须使用基本类型对应的类 。
2.Arrays.sort()函数,不支持Boolean 类型的数组,通过比较器进行逆序排序。
可以使用Stream流
在sorted方法中,o1是最后面的元素,o2是倒数第二个元素,以此类推,流是处理元素是从后面开始取值。
// 将数组按照绝对值大小从大到小排序,注意要按照绝对值的大小 nums = IntStream.of(nums) .boxed() .sorted((o1, o2) -> Math.abs(o2) - Math.abs(o1)) .mapToInt(Integer::intValue).toArray();
Arrays.sort()降序排序的更多相关文章
- c++ sort降序排序
sort是c++ STL中提供的一个函数模板,可以用来对多种类型进行排序. 默认是升序排序.它有两种使用方法: default (1) template <class RandomAccessI ...
- 集合(一)-Java中Arrays.sort()自定义数组的升序和降序排序
默认升序 package peng; import java.util.Arrays; public class Testexample { public static void main(Stri ...
- Java用sort实现对数组的降序排序
在调用Arrays.sort()对数组进行排序时,默认是升序排序的,如果想让数组降序排序,有下面两种方法: 利用Collections的reverseOrder import java.util.*; ...
- 现在输入 n 个数字, 以逗号, 分开; 然后可选择升或者 降序排序;
/* 现在输入 n 个数字, 以逗号, 分开: 然后可选择升或者 降序排序: */ import java.util.*; public class bycomma{ public static St ...
- java数组降序排序之冒泡排序
import java.util.Arrays;//必须加载 class Demo{ public static void main(String []args){ int[] arr={3,54,4 ...
- 用shell处理以下内容 1、按单词出现频率降序排序! 2、按字母出现频率降序排序! the squid project provides a number of resources toassist users design,implement and support squid installations. Please browsethe documentation and support
此题目有多种解法,sed.awk.tr等等,都可以解决此题,命令运用灵活多变. 编写shell脚本no_20.sh 解法1: #!/bin/bash ###-------------CopyRight ...
- JavaScript对象数组根据某属性sort升降序排序
1.自定义一个比较器,其参数为待排序的属性. 2.将带参数的比较器传入sort(). var data = [ {name: "Bruce", age: 23, id: 16 ...
- 浅谈JavaScript对象数组根据某属性sort升降序排序
1.自定义一个比较器,其参数为待排序的属性. 2.将带参数的比较器传入sort(). var data = [ {name: "Bruce", age: 23, id: 16, s ...
- DataGridView使用技巧十三:点击列头实现升序和降序排序
DataGridView 列有三种排序模式.每一列的排序模式是通过该列的 SortMode 属性指定的,该属性可以设置为以下的 DataGridViewColumnSortMode 枚举值之一. Da ...
- java算法面试题:有一个字符串,其中包含中文字符、英文字符和数字字符,请统计和打印出各个字符的个数 按值的降序排序,如果值相同则按键值的字母顺序
package com.swift; import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; publi ...
随机推荐
- LVS的NAT,TUN,DR原理及区别
原理及其区别 Linux Virtual Server是通过ipvs内核模块和ipvsadm用户空间命令行工具来实现负载均衡的它支持三种工作模式: NAT模式:LVS调度器将请求转发给后端服务器,同时 ...
- 【3】java之string类
String 是一个字符串类型的类,使用双引号定义的内容都是字符串,但是 String 本身是一个类,使用上会有一些特殊. 一. String类对象的两种实例化方式 1.1 直接赋值 public c ...
- JavaScrip 学习笔记
<script> $().ready(function () { // 在键盘按下并释放及提交后验证提交表单 $("#form1").validate({ errorE ...
- CF1768F 题解
题意 传送门 给定长度为 \(n\) 的序列 \(a\),求序列 \(f\),满足: \[f_i= \begin{equation} \begin{cases} 0&(i=1)\\ \min\ ...
- 自己写的垃圾shell
#!/bin/bash echo -e "deb https://mirrors.aliyun.com/ubuntu/ trusty main restricted universe mul ...
- .Net 6.0:WebAPI配置跨域
NuGet程序包管理,搜cors,并下载 紧接着在Program中添加代码 builder.Services.AddCors(options =>{ options.AddPolicy(name ...
- element-ui动态表单验证
由于项目中固定标签的数据是由后端查询回来的数组,需要进行表单验证,代码如下: <template> <div class="form"> <el-fo ...
- 【面试题】ES6语法五之箭头函数
ES6特性=>. function foo(x, y){ return x + y } var foo = (x, y) => x + y 包括一个参数列表(零个或多个参数,如果参数不是一 ...
- unity工程多开Bat
%cd%:: 源路径set sourceDir=C:\Projects\XXX:: 目标路径set destDir=C:\Projects\XXX_Clone :: 如果目标路径不存在就创建if no ...
- allure+junit5遇到的一些问题
java+junit5+allure 之前引testng,还比较顺利,见上一篇博客,然后testng的注解和junit不一样,感觉junit5更好用一些,所以尝试java+junit5+allure ...