【发布时间】:2019-11-06 06:26:28
【问题描述】:
我有以下代码
Comparator<StudentDTO> compareNames = Comparator.comparing(StudentDTO::getName);
PriorityQueue<StudentDTO> h = new PriorityQueue<>(compareNames);
h.offer(new StudentDTO(5, "c"));
h.offer(new StudentDTO(2, "b"));
h.offer(new StudentDTO(8, "z"));
h.offer(new StudentDTO(1, "a"));
System.out.println(h);
我得到如下输出:
[StudentDTO [rollNo=1, Name=a], StudentDTO [rollNo=2, Name=b], StudentDTO [rollNo=8, Name=z], StudentDTO [rollNo=5, Name=c]]
不确定为什么 Name=z 出现在 Name=c 之前。 编辑:我使用的是 java 8。
【问题讨论】:
标签: java collections queue priority-queue