java.lang.Enum.ordinal() 方法返回枚举常量的序数(它在枚举声明,其中初始常量分配的零序位)。
例如:
public void convertQueryBuilder(BoolQueryBuilder rootQueryBuilder, QueryBuilder childQueryBuilder) { switch (SearchOption.SearchLogic.valueOf("must").ordinal()) { case 1: rootQueryBuilder.should(childQueryBuilder); break; case 2: rootQueryBuilder.must(childQueryBuilder); break; case 3: rootQueryBuilder.mustNot(childQueryBuilder); break; default: throw new RuntimeException(""); } }
使用了ordinal方法后,永远都会抛异常 throw new RuntimeException("");
这是外包写的项目,找了两天才找到这个错误,一直以为是ES这块的问题,各种高配置,都有不想干的心态了,加油吧