灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:3595回复:0

Java中的两种for循环介绍

楼主#
更多 发布于:2012-11-08 20:30

在学习Hibernate的时候学习一种在java当中的for循环,估计是以前学习的时候没有记住,忘记了在这里再写下笔记

package com.zxd.test;

import java.util.List;

import org.hibernate.HibernateException;

import org.hibernate.Query;

import org.hibernate.Session;

import org.hibernate.SessionFactory;

import org.hibernate.cfg.Configuration;

import com.zxd.bean.House;

import com.zxd.util.QueryProperty;

/**

* HQL封闭查询的测试类

* @author zhang

*

*/

public class TestHouse {

public static void main(String[] args) {

//公共的成员变量

SessionFactory sf = null;

Session session = null;

QueryProperty qp = new QueryProperty();

//封装查询的数据

qp.setTitle("%好房%");

qp.setStreet_id("1002");

qp.setType_id("1004");

qp.setLow_price(20);

qp.setHigh_price(200);

qp.setSmall_floorage(50);

qp.setBig_floorage(180);

//HQL语句

StringBuffer sb = new StringBuffer();

sb.append("from House where ");

sb.append("(title like :title) ");

sb.append("and (type_id like :type_id) ");

sb.append("and (street_id like :street_id) ");

sb.append("and (price between :low_price and :high_price) ");

sb.append("and (floorage between :small_floorage and :big_floorage)");

try {

//开始执行查询

sf = new Configuration().configure().buildSessionFactory();

session = sf.openSession();

Query query = session.createQuery(sb.toString());

query.setProperties(qp);

List<House> list = query.list();

//第一种用:的循环

/*for(House house:list){

System.out.println("标题是:"+house.getTitle());

System.out.println("面积是:"+house.getFloorage());

System.out.println("价格是:"+house.getPrice());

System.out.println("区是:"+house.getStreet().getDistrict().getName());

System.out.println("街道是:"+house.getStreet().getName());

System.out.println("----------------------------------");

}*/

//第二种循环

for(int i = 0;i<list.size();i++){

System.out.println("标题是:"+list.get(i).getTitle());

System.out.println("面积是:"+list.get(i).getFloorage());

System.out.println("价格是:"+list.get(i).getPrice());

System.out.println("区是:"+list.get(i).getStreet().getDistrict().getName());

System.out.println("街道是:"+list.get(i).getStreet().getName());

System.out.println("----------------------------------");

}

} catch (HibernateException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}finally{

session.close();

sf.close();

}

}

}

上面例子中的第一种循环是我没有记住的,用了关键字符“:”,一般这种循环是用来对一个集合的遍历上的(List<House>、Map)中的用的很方便。

第二种循环是普通的循环我这是Java中最常见的一种for循环。


喜欢0 评分0
游客

返回顶部