/**
 * 对字符串加密
 */
public static String encodeStr(String srcDecodeStr){
    if (srcDecodeStr == null || srcDecodeStr.trim().isEmpty()) {
        System.out.println("输入待加密字符串为空!");
        return null;
    }
    int length = srcDecodeStr.length();
    if (length>1000){
        System.out.println("输入待加密字符串太长,超过1000个字符!");
        return null;
    }
    for (int i = 0; i < length; i++) {
        char charTemp = srcDecodeStr.charAt(i);
        if (!(Character.isDigit(charTemp) || Character.isLowerCase(charTemp) || Character.isUpperCase(charTemp))){
            System.out.println("输入待加密字符串非法!");
            return null;
        }
    }
    StringBuilder stringBuilder = new StringBuilder();
    for (int i = 0; i < length; i++) {
        Character encodeChar=null;
        char charTemp = srcDecodeStr.charAt(i);
        if (Character.isDigit(charTemp)){
            if (charTemp < '9'){
                encodeChar = (char) (charTemp + 1);
            }else {
                encodeChar='0';
            }
        }else {
            if (Character.isLowerCase(charTemp)){
                char newChar = (char) (charTemp - 32);
                if (newChar < 'Z'){
                    encodeChar = (char) (newChar + 1);
                }else {
                    encodeChar='A';
                }
            }else {
                char newChar = (char) (charTemp + 32);
                if (newChar < 'z'){
                    encodeChar = (char) (newChar + 1);
                }else {
                    encodeChar='a';
                }
            }
        }
        stringBuilder.append(encodeChar);
    }
    return stringBuilder.toString();
}
/**
 * 对字符串进行解密
 */
public static String decodeStr(String srcEncodeStr){
    if (srcEncodeStr == null || srcEncodeStr.trim().isEmpty()) {
        System.out.println("输入待解密字符串为空!");
        return null;
    }
    int length = srcEncodeStr.length();
    if (length>1000){
        System.out.println("输入待解密字符串太长,超过1000个字符!");
        return null;
    }
    for (int i = 0; i < length; i++) {
        char charTemp = srcEncodeStr.charAt(i);
        if (!(Character.isDigit(charTemp) || Character.isLowerCase(charTemp) || Character.isUpperCase(charTemp))){
            System.out.println("输入待加密字符串非法!");
            return null;
        }
    }
    StringBuilder stringBuilder = new StringBuilder();
    for (int i = 0; i < length; i++) {
        Character decodeChar=null;
        char charTemp = srcEncodeStr.charAt(i);
        if (Character.isDigit(charTemp)){
            if (charTemp > '0'){
                decodeChar = (char) (charTemp - 1);
            }else {
                decodeChar='9';
            }
        }else {
            if (Character.isLowerCase(charTemp)){
                char newChar = (char) (charTemp - 32);
                if (newChar > 'A'){
                    decodeChar = (char) (newChar - 1);
                }else {
                    decodeChar='Z';
                }
            }else {
                char newChar = (char) (charTemp + 32);
                if (newChar > 'a'){
                    decodeChar = (char) (newChar - 1);
                }else {
                    decodeChar='z';
                }
            }
        }
        stringBuilder.append(decodeChar);
    }
    return stringBuilder.toString();
}