Добрый день!
но я не знаю правильно ли я написал класс - подскажите пожалуйста.
Ну в принципе код рабочий. Другое дело, что поведение кода может отличаться от ожидаемого вами. Тут не подскажу, ибо не знаю вашей конечной цели.
Что касается кода:
public class Main {
public static class PriorityQueueExample {
Это конечно не ошибка, но и смысла в данном случае в статичном классе не вижу.
Можно удалить класс Main
public class PriorityQueueExample {
PriorityQueue<Integer> PQueue = new PriorityQueue<>();
Названия переменных согласно naming convention с маленькой буквы. Например, pQueue, а еще лучше, если они будут осознанными (читаемыми). Например, вместо PQueue2 использовать carQueue или carModelQueue и т.д.
PQueue2.add("BMW");
PQueue.add(25);
PQueue2.add("Mazda");
PQueue.add(35);
PQueue2.add("Tesla");
PQueue.remove(10);
PQueue2.remove("Tesla");
Вы добавили 2 элемента Mazda & Tesla, 25 & 35, но удаляете элемент, которого нет в очереди (10, Tesla). Точнее вы добавили Tesla, а 10 не добавили. Возможно, что это просто упущение.
Возможно, что если увижу задание (задачу), то смогу точно сказать, насколько корректно вы реализовали его