Java中的两种for循环介绍

 更新时间:2012年10月03日 19:35:08   作者:  
在学习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循环。

相关文章

  • java两种单例模式用法分析

    java两种单例模式用法分析

    这篇文章主要介绍了java两种单例模式用法,结合实例形式对比分析了java实现单例模式的两种常见技巧,需要的朋友可以参考下
    2016-08-08
  • Java校验银行卡是否正确的核心代码

    Java校验银行卡是否正确的核心代码

    这篇文章主要介绍了Java校验银行卡是否正确的核心代码,需要的朋友可以参考下
    2017-01-01
  • java利用DFA算法实现敏感词过滤功能

    java利用DFA算法实现敏感词过滤功能

    在最近的开发中遇到了敏感词过滤,便去网上查阅了很多敏感词过滤的资料,在这里也和大家分享一下自己的理解。下面这篇文章主要给大家介绍了关于java利用DFA算法实现敏感词过滤功能的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-06-06
  • Java连接Linux服务器过程分析(附代码)

    Java连接Linux服务器过程分析(附代码)

    这篇文章主要介绍了Java连接Linux服务器过程分析(附代码),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • IntelliJ IDEA的build path设置方法

    IntelliJ IDEA的build path设置方法

    这篇文章主要介绍了IntelliJ IDEA的build path设置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • spring boot下 500 404 错误页面处理的方法

    spring boot下 500 404 错误页面处理的方法

    本篇文章主要介绍了spring boot下 500 404 错误页面处理的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • java9中gc log参数迁移

    java9中gc log参数迁移

    本篇文章给大家详细讲述了java9中gc log参数迁移的相关知识点,对此有需要的朋友可以参考学习下。
    2018-03-03
  • javaweb开发提高效率利器JRebel详解

    javaweb开发提高效率利器JRebel详解

    这篇文章主要介绍了javaweb开发提高效率利器JRebel详解,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • Spring Boot 实例代码之通过接口安全退出

    Spring Boot 实例代码之通过接口安全退出

    这篇文章主要介绍了Spring Boot 实例代码之通过接口安全退出的相关资料,需要的朋友可以参考下
    2017-09-09
  • Spring实现文件上传(示例代码)

    Spring实现文件上传(示例代码)

    Spring可以继承commons-fileupload插件来实现文件上传的功能。分为前端JSP编写和后台Controller的编写
    2013-10-10

最新评论