⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jmfilter.java

📁 梦界家园程序开发基底框架
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
                else if (iType == JMVal.TYPE_DOUBLE) {
                    double middouble = orgArr.getDoubleValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), middouble);
                }
                //TYPE_CHAR
                else if (iType == JMVal.TYPE_CHAR) {
                    char midchar = orgArr.getCharValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midchar);
                }
                //TYPE_FLOAT
                else if (iType == JMVal.TYPE_FLOAT) {
                    float midfloat = orgArr.getFloatValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midfloat);
                }
                //TYPE_BYTE
                else if (iType == JMVal.TYPE_BYTE) {
                    byte midbyte = orgArr.getByteValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midbyte);
                }
                //TYPE_INT
                else if (iType == JMVal.TYPE_INT) {
                    int midintold = orgArr.getIntValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midintold);
                }
                //TYPE_BOOLEAN
                else if (iType == JMVal.TYPE_BOOLEAN) {
                    boolean midbooleanold = orgArr.getBooleanValue(i,
                                                                   veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midbooleanold);
                }
                //TYPE_BYTE[]
                else if (iType == JMVal.TYPE_BYTEARRAY) {
                    byte[] midbytesold = orgArr.getByteArrayValue(i,
                                                                  veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midbytesold);
                }
                //TYPE_DATE
                else if (iType == JMVal.TYPE_DATE) {
                    Date middateold = orgArr.getDateValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), middateold);
                } //end if
            } //END FOR
            retArr.nextRow();
        } //END FOR
        //THE SECOND JM2DArray
        haColMap = new HashMap(addArr.getColNameMap());
        veColNa = new JMVector(addArr.getColNames());
        for (int i = 0; i < addArr.rowCount(); i++) {
            for (int j = 0; j < veColNa.size(); j++) {
                int iColplace = Integer.parseInt(haColMap.get(veColNa.get(j).toString().
                                                              toUpperCase()).toString());
                int iType = addArr.getDataType(i, iColplace);
                //TYPE_STRING
                if (iType == JMVal.TYPE_STRING) {
                    String midStr = addArr.getStringValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midStr);
                }
                //TYPE_SHORT
                else if (iType == JMVal.TYPE_SHORT) {
                    short midshort = addArr.getShortValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midshort);
                }
                //TYPE_LONG
                else if (iType == JMVal.TYPE_LONG) {
                    long midLong = addArr.getLongValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midLong);
                }
                //TYPE_DOUBLE
                else if (iType == JMVal.TYPE_DOUBLE) {
                    double middouble = addArr.getDoubleValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), middouble);
                }
                //TYPE_CHAR
                else if (iType == JMVal.TYPE_CHAR) {
                    char midchar = addArr.getCharValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midchar);
                }
                //TYPE_FLOAT
                else if (iType == JMVal.TYPE_FLOAT) {
                    float midfloat = addArr.getFloatValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midfloat);
                }
                //TYPE_BYTE
                else if (iType == JMVal.TYPE_BYTE) {
                    byte midbyte = addArr.getByteValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midbyte);
                }
                //TYPE_INT
                else if (iType == JMVal.TYPE_INT) {
                    int midintold = addArr.getIntValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midintold);
                }
                //TYPE_BOOLEAN
                else if (iType == JMVal.TYPE_BOOLEAN) {
                    boolean midbooleanold = addArr.getBooleanValue(i,
                                                                   veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midbooleanold);
                }
                //TYPE_BYTE[]
                else if (iType == JMVal.TYPE_BYTEARRAY) {
                    byte[] midbytesold = addArr.getByteArrayValue(i,
                                                                  veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), midbytesold);
                }
                //TYPE_DATE
                else if (iType == JMVal.TYPE_DATE) {
                    Date middateold = addArr.getDateValue(i, veColNa.get(j).toString());
                    retArr.addItem(veColNa.get(j).toString(), middateold);
                } //END IF
            } //END FOR
            retArr.nextRow();
        } //END FOR
        return retArr;

    }

    /**
     *
     * @param aosource
     * @param askey
     * @param aiSign
     * @param asValue
     * @return JM2DArray
     * @throws Exception
     */
    @SuppressWarnings ("unchecked")
    public static JM2DArray selectGet (JM2DArray aosource,
                                       String[] askey, int[] aiSign, String[] asValue) throws Exception {
        JM2DArray poResult = new JM2DArray();
        JMVector selVecor = new JMVector();
        boolean Flg = false;
        boolean Flg11 = false;
        String v1 = "";
        //haColMap
        HashMap haColMap = null;

        //LENGTH偺庢摼
        if (aosource == null || aosource.rowCount() == 0 || aosource.isEmpty()) {
            throw new NullPointerException("aosource is null !");
        }
        if (askey == null || aiSign == null || asValue == null ||
            askey.length == 0 || aiSign.length == 0 || asValue.length == 0) {
            throw new NullPointerException("asValue is error !");
        }
        if (askey.length != aiSign.length || askey.length != asValue.length
            || aiSign.length != asValue.length) {
            throw new NullPointerException("asValue is error !");
        }
        haColMap = new HashMap(aosource.getColNameMap());
        int piRow = aosource.rowCount();
        //曊椺
        for (int i = 0; i < piRow; i++) {
            Flg11 = true;
            for (int j = 0; j < askey.length; j++) {
                //楍崋
                int piColumn = ((Integer) haColMap.get(askey[j].toUpperCase())).
                               intValue();
                //椶宆偺庢摼
                int piType = aosource.getDataType(0, piColumn);
                //惍峴悢抣偺庢摼
                JMVector RowValue = new JMVector(aosource.getRow(i));
                Object objValue = RowValue.get(piColumn);
                JMVal varValue = (JMVal) objValue;
                String psValue = varValue.toString();
                v1 = psValue.substring(psValue.indexOf(",") + 1);
                v1 = v1.substring(0, v1.length() - 1);
                v1 = v1.trim();
                //THE INT_DOUBLE_FLOAT_LONG_VALUE 偺攔彉
                if (piType >= 0 && piType <= 5) {
                    double pv1 = Double.parseDouble("" + v1);
                    double pv2 = Double.parseDouble("" + asValue[j]);
                    Flg = compareTo2(pv1, aiSign[j], pv2);
                    if (Flg == false) {
                        Flg11 = false;
                        break;
                    }
                } else {
                    //TYPE_STRING 偺攔彉
                    String pstemp = "" + asValue[j];
                    Flg = compareTo(v1, aiSign[j], pstemp);
                    if (Flg == false) {
                        Flg11 = false;
                        break;
                    }
                } //end if type
            } //end for 曊椺
            if (Flg11 == true) {
                selVecor.add("" + i);
            }
        } //end for 曊椺
        poResult = Flex2DReduce(selVecor, aosource);

        return poResult;
    }

    /**
     *
     * @param v1
     * @param sign
     * @param v2
     * @return boolean
     * @throws Exception
     */
    private static boolean compareTo (String v1, int sign, String v2) throws Exception {
        boolean pfresult = false;
        try {
            int piresult = v1.compareTo(v2);
            if (piresult == 0 && (sign == 0 || sign == 3 || sign == 4)) {
                pfresult = true;
            }
            if (piresult != 0 && sign == -1) {
                pfresult = true;
            }
            if (piresult < 0 && (sign == 2 || sign == 4)) {
                pfresult = true;
            }
            if (piresult > 0 && (sign == 1 || sign == 3)) {
                pfresult = true;
            }
        } catch (Exception e) {
        }
        return pfresult;
    }

    /**
     *
     * @param v1
     * @param sign
     * @param v2
     * @return boolean
     * @throws Exception
     */
    private static boolean compareTo2 (double v1, int sign, double v2) throws Exception {
        boolean pfresult = false;
        try {
            if (v1 == v2 && (sign == 0 || sign == 3 || sign == 4)) {
                pfresult = true;
            }
            if (v1 != v2 && sign == -1) {
                pfresult = true;
            }
            if (v1 < v2 && (sign == 2 || sign == 4)) {
                pfresult = true;
            }
            if (v1 > v2 && (sign == 1 || sign == 3)) {
                pfresult = true;
            }
        } catch (Exception e) {
        }
        return pfresult;
    }

} //end class

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -