亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java LinkedList 排序改變了其他列表

Java LinkedList 排序改變了其他列表

慕的地8271018 2021-12-30 16:10:42
我想在不更改原始列表的情況下對數字列表進行排序。所以這就是我所做的:public double median(){    //first,sort the list    LinkedList<Double>sorted = entries;    Collections.sort(sorted); ...條目是另一個 LinkedList,我希望它未排序。我創建了一個名為 sorted 的新 LinkedList 以不更改原始條目列表。排序列表僅用于此雙重功能。但是,每次當我調用該函數時,它仍然會對條目列表進行排序。如何在不更改原始列表的情況下對其進行排序?到目前為止我所做的:LinkedListsorted = 條目;2.LinkedList<Double>sorted = new LinkedList<Double>();Collections.copy(sorted,entries);3.LinkedList<Double>sorted = new LinkedList<Double>();for(int i=0;i<entries.size();i++){sorted.add(entries.get(i));}他們都沒有正常工作。他們進行排序工作,但他們更改了我不想更改的條目列表。感謝大家。現在問題解決了。我將它們復制粘貼到另一個軟件并粘貼回來,現在它可以正常工作了。我仍然不明白為什么。
查看完整描述

2 回答

?
ibeautiful

TA貢獻1993條經驗 獲得超6個贊

您尚未創建新列表,只是將其分配給名為 的變量sorted,如果想要排序副本,則需要將其復制到另一個列表,如下所示。


LinkedList<Double> sorted = new LinkedList<Double>();

Collections.copy(sorted, entries);

Collections.sort(sorted);


查看完整回答
反對 回復 2021-12-30
?
慕少森

TA貢獻2019條經驗 獲得超9個贊

public static LinkedList<Double> sort(LinkedList<Double> list) {

    LinkedList<Double> res = new LinkedList<>(list);

    Collections.sort(res);

    return res;

}


查看完整回答
反對 回復 2021-12-30
  • 2 回答
  • 0 關注
  • 153 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號