Code review comment: Should be use `if else` for these conditions?

Code under review:
public Type clickhouseTypeToDoris(JdbcFieldSchema fieldSchema) {
        String ckType = fieldSchema.getDataTypeName();
        if (ckType.startsWith("LowCardinality")) {
            ckType = ckType.substring(15, ckType.length() - 1);
        }
        if (ckType.startsWith("Nullable")) {
            ckType = ckType.substring(9, ckType.length() - 1);
        }
        if (ckType.startsWith("Decimal")) {
            String[] accuracy = ckType.substring(8, ckType.length() - 1).split(", ");
            int precision = Integer.parseInt(accuracy[0]);
            int scale = Integer.parseInt(accuracy[1]);
            if (precision <= ScalarType.MAX_DECIMAL128_PRECISION) {
                if (!Config.enable_decimal_conversion && precision > ScalarType.MAX_DECIMALV2_PRECISION) {
                    return ScalarType.createStringType();
                }
                return ScalarType.createDecimalType(precision, scale);
            } else {
                return ScalarType.createStringType();
            }
        }
        if (ckType.contains("String") || ckType.startsWith("Enum")
                || ckType.startsWith("IPv") || "UUID".contains(ckType)) {
            return ScalarType.createStringType();
        }
        
        if (ckType.startsWith("DateTime")) {
            return ScalarType.getDefaultDateType(Type.DATETIME);
        }
        switch (ckType) {
            case "Bool":
                return Type.BOOLEAN;
            case "Int8":
                return Type.TINYINT;
            case "Int16":
            case "UInt8":
                return Type.SMALLINT;
            case "Int32":
            case "UInt16":
                return Type.INT;
            case "Int64":
            case "UInt32":
                return Type.BIGINT;
            case "Int128":
            case "UInt64":
                return Type.LARGEINT;
            case "Int256":
            case "UInt128":
            case "UInt256":
                return ScalarType.createStringType();
            case "Float32":
                return Type.FLOAT;
            case "Float64":
                return Type.DOUBLE;
            case "Date":
            case "Date32":
                return ScalarType.getDefaultDateType(Type.DATE);
            default:
                return Type.UNSUPPORTED;
        }
    }

Line commented on: int precision = Integer.parseInt(accuracy[0]);

Revised code:
public Type clickhouseTypeToDoris(JdbcFieldSchema fieldSchema) {
        String ckType = fieldSchema.getDataTypeName();
        if (ckType.startsWith("LowCardinality")) {
            ckType = ckType.substring(15, ckType.length() - 1);
            if (ckType.startsWith("Nullable")) {
                ckType = ckType.substring(9, ckType.length() - 1);
            }
        } else if (ckType.startsWith("Nullable")) {
            ckType = ckType.substring(9, ckType.length() - 1);
        }
        if (ckType.startsWith("Decimal")) {
            String[] accuracy = ckType.substring(8, ckType.length() - 1).split(", ");
            int precision = Integer.parseInt(accuracy[0]);
            int scale = Integer.parseInt(accuracy[1]);
            if (precision <= ScalarType.MAX_DECIMAL128_PRECISION) {
                if (!Config.enable_decimal_conversion && precision > ScalarType.MAX_DECIMALV2_PRECISION) {
                    return ScalarType.createStringType();
                }
                return ScalarType.createDecimalType(precision, scale);
            } else {
                return ScalarType.createStringType();
            }
        } else if ("String".contains(ckType) || ckType.startsWith("Enum")
                || ckType.startsWith("IPv") || "UUID".contains(ckType)
                || ckType.startsWith("FixedString")) {
            return ScalarType.createStringType();
        } else if (ckType.startsWith("DateTime")) {
            return ScalarType.getDefaultDateType(Type.DATETIME);
        }
        switch (ckType) {
            case "Bool":
                return Type.BOOLEAN;
            case "Int8":
                return Type.TINYINT;
            case "Int16":
            case "UInt8":
                return Type.SMALLINT;
            case "Int32":
            case "UInt16":
                return Type.INT;
            case "Int64":
            case "UInt32":
                return Type.BIGINT;
            case "Int128":
            case "UInt64":
                return Type.LARGEINT;
            case "Int256":
            case "UInt128":
            case "UInt256":
                return ScalarType.createStringType();
            case "Float32":
                return Type.FLOAT;
            case "Float64":
                return Type.DOUBLE;
            case "Date":
            case "Date32":
                return ScalarType.getDefaultDateType(Type.DATE);
            default:
                return Type.UNSUPPORTED;
        }
        
    }