如何检测Arraylist

时间:2016-05-26 10:57:45

标签: java jsp web arraylist

这一点有点复杂,标题可能会产生误导,但我不知道怎么写它。

我试图在.jsp中显示一些2分布的图像。例如:

distribution of images

要做到这一点,我有一个' while'循环,由于设计原因,必须2乘2。像这样: order of images 为此,我有一个ArrayList,它是我的DTO,我封装了我的信息(图像,标题,作者)。

当我有一个包含3或5个元素的ArrayList时会出现问题。如果我只有一个元素,那么它很容易被检测到并且只显示一个元素。

这是我的代码:

ArrayList<Vinilo> coleccionVinilos = (ArrayList<Vinilo>)request.getAttribute("coleccionVinilos");
request.removeAttribute("coleccionVinilos");
if (coleccionVinilos.size() >= 2) {
    int i = 0;
    while (i < 6 && coleccionVinilos.size() > i) {
        if (coleccionVinilos.size() > i) {
            Vinilo col = coleccionVinilos.get(4);
        } else {
            Vinilo col = coleccionVinilos.get(i);
            Vinilo col2 = coleccionVinilos.get(i + 1);
        }
        i = i + 2;
    }
} else if (coleccionVinilos.size() == 1) {
    Vinilo col = coleccionVinilos.get(0);
} else{
    //
}

1 个答案:

答案 0 :(得分:0)

好的,我在写这个问题的同时解决了这个问题,所以我认为无论如何我都会分享它。

这是最终的工作版本

ArrayList<Vinilo> coleccionVinilos = (ArrayList<Vinilo>)request.getAttribute("coleccionVinilos");
request.removeAttribute("coleccionVinilos");
if (coleccionVinilos.size() >= 2) {
    int i = 0;
    while (i < 6 && coleccionVinilos.size() > i) {
        if (i < coleccionVinilos.size() && coleccionVinilos.size() < (i + 2)) {
            Vinilo col = coleccionVinilos.get(i);
        } else {
            Vinilo col = coleccionVinilos.get(i);
            Vinilo col2 = coleccionVinilos.get(i+1);
        }
        i = i + 2;
    }
} else if (coleccionVinilos.size() == 1) {
    Vinilo col = coleccionVinilos.get(0);
} else {
    //
}