java priorityqueue怎樣查找元素

小樊
81
2024-11-16 00:41:17

在Java中,PriorityQueue是一個(gè)基于優(yōu)先級(jí)的隊(duì)列,它不允許直接查找元素。但是,你可以通過(guò)遍歷PriorityQueue來(lái)查找特定元素。以下是一個(gè)示例:

import java.util.Comparator;
import java.util.PriorityQueue;

public class Main {
    public static void main(String[] args) {
        // 創(chuàng)建一個(gè)整數(shù)類型的PriorityQueue,按照升序排列
        PriorityQueue<Integer> priorityQueue = new PriorityQueue<>(Comparator.naturalOrder());

        // 向隊(duì)列中添加元素
        priorityQueue.add(5);
        priorityQueue.add(3);
        priorityQueue.add(8);
        priorityQueue.add(1);

        // 要查找的元素
        int target = 8;

        // 遍歷PriorityQueue查找元素
        boolean found = false;
        for (Integer item : priorityQueue) {
            if (item == target) {
                System.out.println("找到目標(biāo)元素: " + item);
                found = true;
                break;
            }
        }

        // 如果沒(méi)有找到目標(biāo)元素
        if (!found) {
            System.out.println("未找到目標(biāo)元素");
        }
    }
}

在這個(gè)示例中,我們創(chuàng)建了一個(gè)整數(shù)類型的PriorityQueue,并按照升序排列。然后,我們向隊(duì)列中添加了四個(gè)整數(shù)。接下來(lái),我們使用for-each循環(huán)遍歷PriorityQueue,查找目標(biāo)元素。如果找到了目標(biāo)元素,我們將輸出相應(yīng)的信息并跳出循環(huán)。如果沒(méi)有找到目標(biāo)元素,我們將輸出未找到的信息。

0