`
longgangbai
  • 浏览: 7252364 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java回调机制的使用

阅读更多

   学习过Hibernate和Spring等童鞋,经常见到的一个回调机制。

如下:

package com.easyway.commons.ispace.dev.collection;
/**
 * 对象比较的回调接口
 * @author longgangbai
 *
 */
public interface Predicate
{
    public abstract boolean evaluate(Object obj);
}



下面是以下回调的方法:



/**
   * 集合过滤的方法
   * @param collection 过滤的集合
   * @param predicate 过滤的条件
   */
  @SuppressWarnings("unchecked")
  public static void filter(Collection collection, Predicate predicate)
  {
      if(collection != null && predicate != null)
      {
          for(Iterator iterator = collection.iterator(); iterator.hasNext();)
          {
              Object obj = iterator.next();
              if(!predicate.evaluate(obj))
                  iterator.remove();
          }

      }
  }





  @SuppressWarnings("unchecked")
  public static Object find(Collection collection, Predicate predicate)
  {
      if(collection != null && predicate != null)
      {
          for(Iterator iterator = collection.iterator(); iterator.hasNext();)
          {
              Object obj = iterator.next();
              if(predicate.evaluate(obj))
                  return obj;
          }

      }
      return null;
  }





   /**
    * 从集合中查询符合给定条件的对象集合
    * @param collection    集合对象
    * @param predicate  回调方法
    * @return
    */
   @SuppressWarnings("unchecked")
   public static Collection select(Collection collection, Predicate predicate)
   {
       ArrayList arraylist = new ArrayList(collection.size());
       select(collection, predicate, ((Collection) (arraylist)));
       return arraylist;
   }
  /**
      * 从集合中查询符合给定条件的对象集合
   * @param collection    集合对象
   * @param predicate  回调方法
   * @param collection1 存储符合条件集合的Collection对象
   */
   @SuppressWarnings("unchecked")
   public static void select(Collection collection, Predicate predicate, Collection collection1)
   {
       if(collection != null && predicate != null)
       {
           for(Iterator iterator = collection.iterator(); iterator.hasNext();)
           {
               Object obj = iterator.next();
               if(predicate.evaluate(obj))
                   collection1.add(obj);
           }
       }
   }

 

分享到:
评论

相关推荐

    Java回调机制

    Java、Android 中常用的回调机制

    给初学者的java回调demo

    给初学者的java回调demo,有了这篇demo,朋友们能更好地了解java的回调机制,也能手动debug。

    使用一个小例子解释Java回调/代理机制的项目压缩包

    使用一个小例子解释Java回调/代理机制的项目压缩包

    深入浅出Java回调机制

    前几天看了一下Spring的部分源码,发现回调机制被大量使用,觉得有必要把Java回调机制的理解归纳总结一下,以方便在研究类似于Spring源码这样的代码时能更加得心应手。  注:本文不想扯很多拗口的话来充场面,我的...

    详解Java的回调机制

    最近学习java,接触到了回调机制(CallBack)。初识时感觉比较混乱,而且在网上搜索到的相关的讲解,本文介绍了Java的回调机制,有兴趣的同学可以了解一下。

    Java基础核心理解+什么是回调即回调机制讲解

    模块之间总是存在这一定的接口,从调用方式上看,可以分为三类:同步调用、回调和异步调用。同步调用是一种阻塞式调用,也是我们在写程序中经常使用的;...回调是异步的基本,因此下面着重说回调机制。

    android中的回调机制

    通过java下的代码实例和android下自定义的按钮功能详细的解释了回调机制以及回调的作用与意义

    java 回调机制的实例详解

    主要介绍了java 回调机制的实例详解的相关资料,希望通过本文的示例能帮助到大家理解使用回调机制,需要的朋友可以参考下

    两个经典例子让你彻底理解java回调机制(csdn)————程序.pdf

    两个经典例子让你彻底理解java回调机制(csdn)————程序

    Java异步回调机制实例解析共5页.pdf.zip

    Java异步回调机制实例解析共5页.pdf.zip

    浅谈JAVA回调机制1

    当然,即使开头的关于回调的英文概念被翻译成了中文,不少人仍觉得难以理解简单来说,回调就是 A 类调用 B 类中的 X 方法,B 类中的 X 方法执行过程中反过来

    java回调机制1

    第1章. 故事的缘起幼师在黑板上写一个式子 “1 + 1 = ”,由小明同学来填空。由于已经学习了10以内的加法,小明同学可以完全靠自己来计算这个题目,模拟该过

    Java 异步回调机制实例分析

    主要介绍了Java 异步回调机制实例解析的相关资料,需要的朋友可以参考下

    Java/Android回调机制小示例

    一个Callback的小示例

    java 垃圾回收 机制详解

    说起垃圾收集(Garbage Collection,GC),大部分人都把这项技术当做Java语言的伴生产物。经过半个世纪的发展,内存的动态分配与内存回收技术已经相当成熟,一切看起来都进入了“自动化”时代,那为什么我们还要去...

    java调用回调机制详解

    主要介绍了java调用回调机制详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    Java的回调机制实例详解

    主要介绍了Java的回调机制,结合实例形式详细分析了java回调机制相关原理、用法及操作注意事项,需要的朋友可以参考下

    java回调机制实例详解

    主要介绍了java回调机制实例详解的相关资料,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics