You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java进程排序报错:comparing(int)无适配方法,FSFS调度场景求解

进程排序代码错误修复方法

原代码报错error: no suitable method found for comparing(int),原因是Comparator.comparing()需要接收一个函数式接口(用于从集合元素中提取比较键值),直接写cpu.arrivalTime的方式不符合参数要求。

下面是两种可行的修改方案:

  • 方案一:使用Lambda表达式
    明确指定从每个进程对象中提取arrivalTime字段:

    // 若arrivalTime是public字段
    Collections.sort(cpu, Comparator.comparing(process -> process.arrivalTime));
    
    // 若arrivalTime是private字段,通过getter方法获取
    Collections.sort(cpu, Comparator.comparing(process -> process.getArrivalTime()));
    
  • 方案二:使用方法引用(推荐)
    如果你的进程类(假设类名为Process)有对应的getter方法(如getArrivalTime()),可以用更简洁的方法引用写法:

    Collections.sort(cpu, Comparator.comparing(Process::getArrivalTime));
    

注意:替换代码中的Process为你实际使用的进程类名称即可。

内容的提问来源于stack exchange,提问作者Payton

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 23:32:35