日期:2014-05-20  浏览次数:20756 次

Iterator最后的元素
Iterator   怎么判别到最后一个元素

      List <Object>     list   =     dao.xxx()
      for   (Object   o   :   list)   {
            if(   循环到最后元素的时候){
                  执行;
            }
       
      }

价格标记   i   =   list.size()   ,然后   循环内   i--   ,   到0的时候执行
感觉这样做有点麻烦
请教下有什么更简洁的方法?



------解决方案--------------------
想不出来。。。。。。
------解决方案--------------------
Java code

Item item = list.getItem(list.getItemCount());
        list.delItem(list.getItemCount());
        
        //for()处理完
        
        //处理最后的item

------解决方案--------------------
list.next().next()==null; 可以么
------解决方案--------------------
list.get(list.size()-1);
这样可以得到最后一个元素
------解决方案--------------------
探讨

list.next().next()==null; 可以么

------解决方案--------------------
list里面元素可以重复。所以简单的用对象相当不是很好处理。
价格标记i=list.size() ,然后循环内 i--,到0的时候执行感觉这样做有点麻烦
要是真觉得麻烦,
就这样呗
Java code
for   (int i= 0;list.size();i<i++){
Object o = list.get(i);
            if(i = list.size()-1){
                  执行;
            }
       
}

------解决方案--------------------
Java code

    public static void main(String[] args) {
        
        List<String> list=new ArrayList<String>();
        list.add("s1");
        list.add("s2");
        list.add("s3");
        list.add("s4");
        for (String string : list) {
            if(string.equals(list.get(list.size()-1))){
                System.out.println("循环到最后元素的时候");
            }
        }
    }

------解决方案--------------------
Java code

        ArrayList<Object> list = new ArrayList<Object>();
        Iterator<Object> iter = list.iterator();
        while(iter.hasNext()){
            Object object = iter.next();
            //handle object
        }

------解决方案--------------------
修改了一下,打印链表最后一个元素,做其他处理也可以
Java code

        ArrayList<Integer> list = new ArrayList<Integer>();
        list.add(1);
        list.add(2);
        list.add(3);
        list.add(4);
        list.add(5);
        Iterator<Integer> iter = list.iterator();
        Integer n = null;
        while(iter.hasNext()){
            n = iter.next();
        }
        System.out.println(n);

------解决方案--------------------
探讨

list里面元素可以重复。所以简单的用对象相当不是很好处理。
价格标记i=list.size() ,然后循环内 i--,到0的时候执行感觉这样做有点麻烦
要是真觉得麻烦,
就这样呗
Java code
for (int i= 0;list.size();i<i++){
Object o = list.get(i);
if(i = list.size()-1)……

------解决方案--------------------
探讨
list.next().next()==null; 可以么