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 小时前
软件测试:典型面试题库
数据库·python·功能测试·mysql·单元测试·grafana·prometheus
Lucifer三思而后行2 小时前
zCloud 纳管 MySQL 8.4 数据库
数据库·mysql·oracle
eRTE XFUN2 小时前
docker 安装 mysql
mysql·adb·docker
eEKI DAND4 小时前
对Docker部署的MySQL中的数据进行备份恢复
mysql·docker·容器
untE EADO4 小时前
在 MySQL 中使用 `REPLACE` 函数
android·数据库·mysql
STAT abil5 小时前
MySQL 的mysql_secure_installation安全脚本执行过程介绍
数据库·mysql·安全
geBR OTTE9 小时前
flask后端开发(8):Flask连接MySQL数据库+ORM增删改查
数据库·mysql·flask
识君啊9 小时前
中小厂数据库事务高频面试题
java·数据库·mysql·隔离级别·数据库事务·acid
c***89209 小时前
在 Ubuntu 上安装 MySQL 的详细指南
mysql·ubuntu·adb
Bert.Cai10 小时前
MySQL CONCAT()函数详解
数据库·mysql