zoukankan      html  css  js  c++  java
  • while(rs.next())与 if(rs.next())的区别

    1 while(rs.next()){
    2                 Role _role = new Role();
    3                 _role.setId(rs.getInt("id"));
    4                 _role.setRoleCode(rs.getString("roleCode"));
    5                 _role.setRoleName(rs.getString("roleName"));
    6                 roleList.add(_role);
    7             }

    执行之后如果显示_role里的值会遍历rs里的所有值

    if(rs.next()){
                    Role _role = new Role();
                    _role.setId(rs.getInt("id"));
                    _role.setRoleCode(rs.getString("roleCode"));
                    _role.setRoleName(rs.getString("roleName"));
                    roleList.add(_role);
                }

    执行之后如果显示_role里的值发现只有一组数据

    原因:

    1.if(rs.next()),在执行时,首先将指放于rs结果集里的第一个元素前面,判断有没有下一个元素(第一个元素),只判断一次执行,如果有就执行方法体里的内容

    2.while(rs.next()),在执行时,先把指针放在第一个元素的前面,判断有没有下一个元素,比if多的步骤是在执行完一圈之后会把指针指到第二个元素之前,判断有没有第二个元素,依次迭代,遍历结果集里的所有值。

    总结:if可以用来判断是否有值,while用来遍历结合进行输出等操作

  • 相关阅读:
    spring源码阅读(一)
    多线程学习(十)
    多线程学习(九)
    多线程学习(八)
    多线程学习(七)
    多线程学习(六)
    多线程学习(五)
    多线程学习(四)
    matlab-table
    Matlab
  • 原文地址:https://www.cnblogs.com/ws-sharecode/p/12776350.html
Copyright © 2011-2022 走看看