-1

我有一个存储图像的数组列表。我想通过 ID 查找图像,然后添加用户名并对其进行评论。

@Override
public Image createImage(String username, String url, String description) {
    String id = String.valueOf(Images.size() +1);
    Image N = new Image (username, url, description, id);
    Images.add(N);
    return N;

}

@Override
public Comment addCommentOnImage(String username, String img_id, String comment) {
    for(Object s : Images)
        if(s.equals(img_id)) 
        ??????? what now??

}

我将如何在 Java 中解决这个问题?

4

2 回答 2

1

你可以这样。您可以创建一个包含imgID和的imagedescription

public class ImgData {
private String imgID;
private Image image;
private String description;
 // getter and setters

}

现在您可以执行以下操作。现在你有一个列表类型ImgData。然后,您可以简单地执行以下操作来设置所选 id 的描述。

List<ImgData> list=new ArrayList<>();
   for (ImgData i:list){
        if(i.getImgID().equals("someID")){
              i.setDescription("description about the image");
        }
   }
于 2013-09-17T12:07:02.477 回答
0

您应该将该图像对象保存在一个类中,然后在其中添加注释,而不是将图像对象添加到数组列表中

喜欢 :-

  public class MyClass{
    public Int ID { get; set; }

    public Image MyImage { get; set; }

    public string Comment { get; set; }
 }

现在将此类对象添加到数组列表中,然后使用 Linq 通过 ID 获取

于 2013-09-17T12:18:38.423 回答