2014-01-27 73 views
2

我有圖片如何從另一個列表中替換的對象列表中的元素

List<Image> images = getImages(); 

的列表Image.java

public class Image { 
    private String imageId; 

    // getter and setter methods 
    // ... 
} 

而且我有一個List<String> imageIds更換imageId每個Image目的。什麼是最好的方法來做到這一點?

+0

你可以請解釋'我有一個列表圖像來替換每個圖像中的imageId?我不確定你在這裏取代什麼意思。 –

+1

你如何識別每個imageId和每個Image對象之間的關係? –

+0

我需要更多解釋。 –

回答

1

我想遍歷List<Image>和每個元素調用imageID的setter將正常工作。

即使有一種方法可以用較少的代碼來完成,它可能會使用遍歷。

0

迭代圖像列表並調用setImageId(imageId)就可以了。

Iterator<String> imageIDs = imageIds.iterator(); 
for(Image image : images){ 
    image.setImageId(imageIDs.next()); 
} 

既然都是列表我假設順序是重要的,因爲它插入。

0

你已經在評論中提到兩個列表有相同的順序,所以你可以試試這個。

List<String> imageIds=new ArrayList<>(); 
    List<Image> images = new ArrayList<>(); 
    for(Image img:images){ 
     img.setImageId(imageIds.iterator().next()); 
    } 
+0

我不認爲'imageIds.iterator()。next()'是你的意思。 ; ) – Radiodef

0

你這個問題聽起來很奇怪。這不是很清楚,但是如果您需要添加/刪除/替換列表中的元素,則應該使用ListIterator。它有一個set方法,它允許替換元素。

+1

如果問題不明確,您可以在問題的下方發表評論以澄清問題。這是一種評論而不是答案。 –

相關問題