java中的泛型———List<>

来源:互联网 发布:软件开发税负 编辑:程序博客网 时间:2024/05/16 09:51
 
public List<Bank> getKhxxInfos(Connection con){    String sql = "SELECT DH,DZ,KHBH,ZJHM,XM FROM T_YW_KHXXB";  List<Bank> list = new ArrayList<Bank>();    try {     PreparedStatement ps = con.prepareStatement(sql);     ResultSet rs = ps.executeQuery();        while(rs.next()){       Bank bk = new Bank();           bk.setDh(rs.getString("DH"));       bk.setDz(rs.getString("DZ"));       bk.setKubh(rs.getInt("kubh"));       bk.setXm(rs.getString("xm"));       bk.setZjlx(rs.getString("zjlx"));           list.add(bk);    }  } catch (SQLException e) {      e.printStackTrace();    }      return list;}

List<?> 这里面放什么.要看你List里存放什么类型.就像你上面的这个程序.你查询出来的数据放到Bank这个bean中.再把bean放到List中.那么如果 要用泛类型的话,那就List<Bank> bankList = new ArrayList<Bank>();如果 我现在查询出的String sql = "SELECT ZJHM FROM T_YW_KHXXB";这查询出来的是一列.如果 这一列是一个字符类型的话.你可以这么写List<String> list = new ArrayList<String>();list.add(rs.getString("ZJHM"));

Bank是一个类,里面包含了setDh(),setD(),setKubh(),setXm(),setZjlx()方法,所以你实例化Bank后可以调用这些方法。而list就是存储着Bank类型的列表,list是java集合的一种,它是抽象的接口,实现它的有arraylist,linkedlist等。

泛型就是在编译期间限制类型。你上面的List<bank> 里是你这个集合里放的对象的类型为你自己定义的Bank类型,如List<String> 就是为string的list

根据你的程序,放的应该是bank对象,泛型,简单点说就是控制你的容器中存放的内容,好处是当你解析或遍历容器的时候,不需要强转类型,没有装箱和拆箱的过程,效率上比不用泛型的要快一下,代码识别上也容易编写.

 

泛型集合!!指定List存放的类型;

程序分析:这个程序是对数据库T_YW_KHXXB表进行查询的操作;

1.定义T_YW_KHXXB表所对应的实体Bank 其中每个属性与T_YW_KHXXB表中的字段一一对应

2.声明sql查询语句 String sql = "SELECT DH,DZ,KHBH,ZJHM,XM FROM T_YW_KHXXB";

3.List<Bank> list = new ArrayList<Bank>();定义一个集合存储Bank实体对象

4.PreparedStatement ps = con.prepareStatement(sql); ResultSet rs = ps.executeQuery();执行SQL语句并返回ResultSet对象集(结果集)

5.把结果集读取出来并存入List集合对象当中,让后返回这个List集合对象