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)
相关推荐
小哥哥咯1 小时前
Oracle 19c 与 MySQL 8.0 字符串数据类型对比
mysql·oracle
草莓熊Lotso1 小时前
MySQL 数据库基础入门:从概念到实战
linux·运维·服务器·数据库·c++·人工智能·mysql
mingdong06081 小时前
MySQL 的mysql_secure_installation安全脚本执行过程介绍
数据库·mysql·安全
白云偷星子2 小时前
云原生笔记6
linux·运维·笔记·mysql·云原生
jason_renyu2 小时前
Windows 系统安装配置 MySQL 服务(含多端口/多实例管理)
windows·mysql·windows安装mysql·windows配置mysql·mysql多端口配置
艾莉丝努力练剑2 小时前
【QT】常用控件(一):初识控件,熟悉QWidget
android·linux·数据库·qt·学习·mysql·qt5
艾莉丝努力练剑2 小时前
MySQL查看命令速查表
linux·运维·服务器·网络·数据库·人工智能·mysql
码luffyliu2 小时前
踩坑记:Go + MySQL 时区处理导致时间显示差 8 小时
mysql·go
拾贰_C2 小时前
【CentOS | MySQL | uninstall】关于安装的MySQL与系统版本不匹配问题,MySQL卸载与重装
mysql·adb·centos