在Java中,如何向数组添加基于优先级的元素?

在Java中,如何向数组添加基于优先级的元素?,java,arrays,compare,priority-queue,Java,Arrays,Compare,Priority Queue,我必须在java中向PriorityQueue ADP添加一些元素。我需要根据优先级添加它们,以便对数组进行排序。我想遍历数组中的元素,并将它们与我要添加的元素进行比较。如果它更大,我会在前面加上它,如果没有,我会继续。如果是一样的话,我会在后面加上。我知道该怎么做,但不确定如何实现下面代码中描述的比较 while(array != null){ for(int i = 0; i<array.size; i++){ if("element to add >

我必须在java中向PriorityQueue ADP添加一些元素。我需要根据优先级添加它们,以便对数组进行排序。我想遍历数组中的元素,并将它们与我要添加的元素进行比较。如果它更大,我会在前面加上它,如果没有,我会继续。如果是一样的话,我会在后面加上。我知道该怎么做,但不确定如何实现下面代码中描述的比较

while(array != null){
    for(int i = 0; i<array.size; i++){  
        if("element to add > element already in array"){

            //add the element before 
            //index and shift other elements back

            for( int i = array.size; i > index; i--){
                array[i] = array[i-1];
            }
            array[index] = elementToAdd
            array_size++;

        if("element to add > element already in array"){

            //add the element after index and shift other elements back

            for(int i = array.size; i > index+1; i--){
                array[i] = array[i-1];
            }
            array[index+1] = elementToAdd
            array_size++;
            }
         }
      }
}
while(数组!=null){
对于(int i=0;i索引;i--){
数组[i]=数组[i-1];
}
数组[索引]=要添加的元素
数组_size++;
if(“要添加的元素>数组中已存在的元素”){
//在索引后添加元素,并将其他元素移回
对于(int i=array.size;i>index+1;i--){
数组[i]=数组[i-1];
}
数组[索引+1]=要添加的元素
数组_size++;
}
}
}
}

您的问题是什么?您的阵列有什么类型?你想知道如何使用比较器或可比较的接口吗?@GhostCatsays Restatemonica它是一个对象数组,我正在尝试对什么类型的ArrayObject的元素使用.compareTo函数?听起来你应该研究一下我提到的关键词:Comparable和Comparator。你的代码毫无意义。支撑是关闭的,所以很难说你真正想做什么。两个
if
语句的条件都是
if(“要添加的元素>数组中已存在的元素”)
。我认为您试图插入到排序列表中,但您的标题显示了PriorityQueue。您是否正在尝试在数组中实现简单的优先级队列?