第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

復制對新數(shù)組列表的引用并在 Java 中刪除

復制對新數(shù)組列表的引用并在 Java 中刪除

慕工程0101907 2022-07-20 19:34:14
我有一個數(shù)組列表,studentsList,如下所示:class Student{String name;List<Subject> subjects;}我想在另一個列表中復制對這些對象的引用,比如 studentsListCopy。當我對 studentsListCopy 中的學生對象進行任何更改時,比如更改名稱,它也應該反映在原始列表中,但是如果我從 studentsListCopy 中刪除學生對象,它不應該從原始列表中刪除。我怎樣才能做到這一點?
查看完整描述

4 回答

?
守著一只汪

TA貢獻1872條經(jīng)驗 獲得超4個贊

ArrayList<student> studentsListCopy = new ArrayList<student>();


for(int i=0;i<studentList;i++)

{

   studentsListCopy.add(studentList[i])

}

你可能在尋找這樣的東西嗎?


查看完整回答
反對 回復 2022-07-20
?
慕容3067478

TA貢獻1773條經(jīng)驗 獲得超3個贊

您必須簡單地創(chuàng)建一個新的List(應該使用子實現(xiàn)),將您的原始列表作為參數(shù)。


任何容器(原始列表或其副本)中元素的任何更改都會影響對象本身,因為您正在操作引用的對象,并且在任何這些容器中刪除或插入元素不會影響另一個容器,因為它們完全分開:


class Student {

  String name;

  List<Subject> subjects;


  private void someMethod() {

    // create a shallow copy

    List<Subject> copy = new ArrayList<>(subjects);

    // edit the contained elements

    copy.get(0).setSomeProperty();

  }

}


查看完整回答
反對 回復 2022-07-20
?
幕布斯7119047

TA貢獻1794條經(jīng)驗 獲得超8個贊

從您的列表中創(chuàng)建一個不可修改的列表。通過這種方式,您可以編輯列表元素的屬性,并且不能從列表中刪除元素。如下所示:

List<Student> editStudentList = Collections.unmodifiableList(yourStudentList);


查看完整回答
反對 回復 2022-07-20
?
人到中年有點甜

TA貢獻1895條經(jīng)驗 獲得超7個贊

使用對象創(chuàng)建一個新列表,例如new ArrayList<>(subjects),隨心所欲。



查看完整回答
反對 回復 2022-07-20
  • 4 回答
  • 0 關注
  • 133 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號