第二個問題,這是第一個問題。 我有兩個字符串列表。有一個字符串列表(asu) - M1,M2,M3 ...以及字符串列表(rzs) - M1,M2,M3及其所有可能的組合。需要每個元素(asu)(例如M1)找到包含(例如M1)的(rzs)(M1,M1M2,...)中的元素。例如:從(asu)中取出M1並開始在(rzs)中搜索重複(包含)。我們在(rzs)中找到M1M2,它包含M1。之後,我們應該從列表中刪除這兩個元素。非常感謝沒有想法名稱幫助修改此代碼。但程序總是失敗,因爲AbstractList.remove錯誤。請幫助實施邏輯和調整代碼!Java。如何從兩個列表中刪除重複的對象
Imports..........
public class work{
List<string> asu = Arrays.asList("M1","M1","M1","M3","M4","M5","M1","M1","M1","M4","M5","M5");
List<string> rzs = Arrays.asList("M1","M2","M3","M4","M5",
"M1M2","M1M3","M1M4","M1M5","M2M3","M2M4","M2M5","M3M4","M3M5","M4M5"
,"M1M2M3","M1M2M4","M1M2M5","M1M3M4","M1M3M4","M1M4M5","M2M4","M2M5");
public static void main(String[] args) {
work bebebe = new work();
bebebe.mywork();
}
List<string> tmp1 = new ArrayList<string>();
List<string> tmp2 = new ArrayList<string>();
System.out.println(Arrays.deepToString(rzs));
System.out.println(Arrays.deepToString(asu));
for (string curr : asu){
for (string currRzs : rzs){
System.out.println("New iteration ");
if (currRzs.contains(curr)) {
System.out.println("Element ("+curr+") in ASU =
element ("+currRzs+") in RZS");
if(tmp1.contains(curr) == false)
tmp1.add(curr);
if(tmp2.contains(currRzs) == false)
tmp2.add(currRzs);
}
}
}
for (string curr : tmp1){
asu.remove(curr);
}
for (string currRzs : tmp2){
rzs.remove(currRzs);
}
'第二個問題,這是繼續first'的 - 這是很好的做法,提供鏈接 – Tala
你得到UnsupportedOperationException異常? –
是的,我有UnsupportedOperationException –