Java collection 集合差操作
package com.suypower.xssystem.temp;/* *电量数据同步 *@author chengYu *@param connection *@return arrayA,arrayB */import java.sql.Connection;import java.sql.Statement;import java.sql.ResultSet;import java.sql.*;import java.util.ArrayList;import com.suypower.xssystem.dao.dbconn;import java.util.List;import java.util.Collection;import org.apache.commons.collections.CollectionUtils;import java.util.Arrays;public class ReturnArray{public ReturnArray(){}public static void main(String[] args) { dbconn.isPool = false; String filename = null; if (args.length == 0) return; if (args == null) { return; } else { filename = ".//" + args; } dbconn.setDataSourse(filename); dbconn db = new dbconn(); /** * connect to db2 tb_gd_xl and tb_fxs * param lyid and xldm * return arrayA,arrayB */ Connection con = null; try { con = db.getConnection(); Statement stmt = con.createStatement(); String sqlA = "select xldm from tb_gd_xl where xldm is not null"; ResultSet rsA =stmt.executeQuery(sqlA); ArrayList arrayA = new ArrayList(); ArrayList arrayB = new ArrayList(); while(rsA.next()) { String xldm = rsA.getString("xldm"); arrayA.add(xldm); } String sqlB = "select lyid from tb_fxs where lyid is not null"; ResultSet rsB = stmt.executeQuery(sqlB); while(rsB.next()) { String lyid = rsB.getString("lyid"); arrayB.add(lyid); } /** * 实现差操作 */ List a = Arrays.asList(arrayA.toArray()); List b = Arrays.asList(arrayB.toArray()); Collection subtract = CollectionUtils.subtract(a,b); ArrayList arraylistC = new ArrayList(subtract); for(int i=0;i<arraylistC.size();i++) { System.out.println((String)arraylistC.get(i)); } /** * 实现 插入 数据库 相应 节点 更新 */ }catch(Exception e) { e.printStackTrace(); } finally { try { if (con != null) { con.close(); } } catch (SQLException ex) { ex.printStackTrace(); } } }}
页:
[1]