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)
相关推荐
被摘下的星星9 小时前
MySQL count()函数的用法
数据库·mysql
素玥9 小时前
实训5 python连接mysql数据库
数据库·python·mysql
喵了几个咪11 小时前
如何在 Superset Docker 容器中安装 MySQL 驱动
mysql·docker·容器·superset
Chasing__Dreams11 小时前
Mysql--基础知识点--95--为什么避免使用长事务
数据库·mysql
数据知道13 小时前
claw-code 源码分析:OmX `$team` / `$ralph`——把 AI 辅助开发从偶发灵感变成可重复流水线
数据库·人工智能·mysql·ai·claude code·claw code
__土块__13 小时前
大厂后端一面模拟:从线程安全到分布式缓存的连环追问
jvm·redis·mysql·spring·java面试·concurrenthashmap·大厂后端
做个文艺程序员14 小时前
深入 MySQL 内核:MVCC、Buffer Pool 与高并发场景下的极限调优
数据库·mysql·adb
数厘14 小时前
2.4MySQL安装配置指南(电商数据分析专用)
数据库·mysql·数据分析
一江寒逸14 小时前
零基础从入门到精通MySQL(下篇):精通篇——吃透索引底层、锁机制与性能优化,成为MySQL实战高手
数据库·mysql·性能优化
爱码小白15 小时前
数据库多表命名的通用规范
数据库·python·mysql