java 获取最高20%数据

有两个问题:

  • 假如是空列表或者数据量过小,那么使用get方法会抛出数组越界

    list = new ArrayList();
    list.get(list.size() / 4) // 可能出现 get(0)越界

解决

使用stream().limit()方法。

复制代码
 List<Double> sortPoint = new ArrayList();
sortPoint.stream().sort(<实现一个比较器>).limit(sortPoint.size() / 5).toList();
collect.isEmpty() ? 0 : collect.get(collect.size() - 1);

第二种:

复制代码
list.size() / 4 >= list.size() ? 0: list.get(list.size() / 4)
相关推荐
·云扬·10 小时前
MySQL 8.0 Redo Log 归档与禁用实战指南
android·数据库·mysql
筵陌11 小时前
MySQL索引及其底层原理(上)
mysql
怣5012 小时前
MySQL子查询零基础入门教程:从小白到上手(零基础入门版)
数据库·mysql
猫头虎13 小时前
基于信创openEuler系统安装部署OpenTeleDB开源数据库的实战教程
数据库·redis·sql·mysql·开源·nosql·database
Nandeska13 小时前
17、MySQL InnoDB ReplicaSet
数据库·mysql
hlABgYML13 小时前
基于NGSIM数据的Wiedemann99跟驰模型标定
mysql
墨理学AI14 小时前
一文学会一点python数据分析-小白原地进阶(mysql 安装 - mysql - python 数据分析 - 学习阶段梳理)
python·mysql·数据分析
洛豳枭薰14 小时前
MySQL 并行复制
数据库·mysql
纤纡.14 小时前
Linux 下 MySQL 数据类型与约束:第三章核心表格归纳与实战应用
linux·mysql
czlczl2002092514 小时前
增删改查时如何提高Mysql与Redis的一致性
数据库·redis·mysql