01/10/2018, 08:15
Vấn đề thêm phần tử vào queue trong java
Mình có 1 class Inf gồm 3 phần tử và 1 PriorityQueue. Mình muốn thêm n phần tử kiểu Inf vào queue thông qua 1 biến trung gian “temp”
Nhưng mỗi lần thêm là queue chỉ add địa chỉ của biến chứ không thêm giá trị biến. Mình muốn hỏi là có cách nào để mỗi lần thêm là queue nhận giá trị thay vì địa chỉ.
class Inf{
public int x,val,prev;
}
class Cmp implements Comparator<Inf>{
@Override
public int compare(Inf inf1,Inf inf2){
if(true){
return 1;
}
if(inf2.val<inf1.val){
return 1;
}
else if(inf2.val==inf1.val){
return 0;
}
return -1;
}
}
public class Ex {
Inf temp=new Inf();
void Dijkstra(){
Cmp cmp=new Cmp();
Queue qu=new PriorityQueue(cmp);
temp.x=1;
for(int i=0;i<5;i++){
temp.val=i;
qu.add(temp);
}
}
}
Bài liên quan
Mình nghĩ mỗi lần thêm thì tạo một đối tượng mới nhỉ