问答详情
源自:8-8 使用Cookie实现保存商品浏览记录

每次返回前五条记录,for循环哪里是什么意思?

// 每次返回前五条记录
		int count = 5;
		if (list != null && list.length() > 0) {
			String[] arr = list.split(",");
			// 如果商品记录大于等于5条
			if (arr.length >= 5) {
				for (int i = arr.length - 1; i >= arr.length - count; i--) {
					itemList.add(getItemsById(Integer.parseInt(arr[i])));
				}
			} else {
				for (int i = arr.length - 1; i >= 0; i--) {
					itemList.add(getItemsById(Integer.parseInt(arr[i])));
				}
			}
			return itemList;
		} else {
			return null;
		}


提问者:Catalina7 2018-01-31 16:39

个回答

  • 慕哥9962356
    2018-02-03 15:13:44
    已采纳

    for (int i = arr.length - 1; i >= arr.length - count; i--) {
                        itemList.add(getItemsById(Integer.parseInt(arr[i])));
    }

    是这里有疑问吗?举一个例子,当你浏览了6条商品记录,把上面的语句翻译一下,就变成下面的这个样子,

    for (int i = 5; i >= 1; i--) {

        itemList.add(getItemsById(Integer.parseInt(arr[i])));

    }

    这样就表达出来了一种,由最后一条往前面一步一步退的遍历方式