zoukankan      html  css  js  c++  java
  • List集合的过滤之lambda表达式

    下面代码 是过滤List中的对象,->后面为条件,满足条件的才会放入List中

    java 8 中lambda表达式写法
    public static void filter(List<SQLStatement> stmtList) {
        stmtList = stmtList.stream().filter(stmt -> !(stmt instanceof OracleInsertStatement) && stmt.getParent() == null).collect(Collectors.toList());
        stmtList = stmtList.stream().filter(stmt -> !(stmt instanceof OracleUpdateStatement) && stmt.getParent() == null).collect(Collectors.toList());
        stmtList = stmtList.stream().filter(stmt -> !(stmt instanceof OracleDeleteStatement) && stmt.getParent() == null).collect(Collectors.toList());
        stmtList = stmtList.stream().filter(stmt -> !(stmt instanceof SQLSelectStatement) && stmt.getParent() == null).collect(Collectors.toList());
        stmtList = stmtList.stream().filter(stmt -> !(stmt instanceof SQLUpdateStatement) && stmt.getParent() == null).collect(Collectors.toList());
        stmtList = stmtList.stream().filter(stmt -> !(stmt instanceof SQLInsertStatement) && stmt.getParent() == null).collect(Collectors.toList());
        stmtList = stmtList.stream().filter(stmt -> !(stmt instanceof SQLDeleteStatement) && stmt.getParent() == null).collect(Collectors.toList());
    }

     java 7 以前写法

       stmtList.stream().filter(new Predicate<SQLStatement>() {
       @Override
       public boolean test(SQLStatement stmt) {
       return !(stmt instanceof OracleInsertStatement);
       }
       }).collect(Collectors.toList());

  • 相关阅读:
    Android Virtual Device(AVD)屏幕大小调整
    修改obj三维模型文件中坐标z为其相反数
    AE安装检测(C++)
    单件模式
    地形转立体实验截图
    保持几何特征的三维建筑物模型简化方法 毕业硕士论文
    判断多边形点串存放序列
    mathematica 查找 mathpass 注册文件位置
    在线调色板搜集
    图标资源搜集
  • 原文地址:https://www.cnblogs.com/wangchaoyu/p/8658315.html
Copyright © 2011-2022 走看看