1. 程式人生 > >字串比較,List集合比較,結果集的比較

字串比較,List集合比較,結果集的比較

/**
 * @param data1
 * @param data2
 * @param ignoreSapce 是否忽略空格
 * @param ignoreCase  是否忽略大小寫
 * @param ignoreOrder 是否忽略順序
 * @return
 */
public static boolean cmpData(List<List<String>> data1, List<List<String>> data2, boolean ignoreSapce,
                              boolean ignoreCase, boolean ignoreOrder) throws Exception {
    if (null == data1 && null == data2) {
        return true;
    } else if (null == data1 && null != data2) {
        return false;
    } else if (null != data1 && null == data2) {
        return false;
    }
    if (data1.size() != data2.size()) {
        return false;
    }
    List<String> d1 = new ArrayList<String>();
    List<String> d2 = new ArrayList<String>();
    for (int i = 0; i < data1.size(); i++) {
        List<String> al = data1.get(i);
        List<String> bl = data2.get(i);
        if (al == null) {
            d1.add("null");
        } else {
            d1.add(al.toString());
        }


        if (bl == null) {
            d2.add("null");
        } else {
            d2.add(bl.toString());
        }
    }
    if (ignoreOrder) {
        Collections.sort(d1);
        Collections.sort(d2);
    }
    return cmpLine(d1, d2, ignoreSapce, ignoreCase);//此處呼叫第二個方法