Enum Class StringTemplate.Feature
- All Implemented Interfaces:
Serializable,Comparable<StringTemplate.Feature>,Constable
- Enclosing class:
StringTemplate
格式化 和 解析 策略
同组内的策略是互斥的,一但设置为组内的某个新策略,就会清除之前的同组策略,仅保留新策略
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>> -
Enum Constant Summary
Enum ConstantsEnum ConstantDescription格式化时,如果 占位符 没有 对应的值,则打印 默认值,如果 没有默认值,则抛出异常格式化时,如果 占位符 没有 对应的值,则打印 空字符串格式化时,如果 占位符 没有 对应的值,且没有默认值,则打印"null"字符串格式化时,如果 占位符 没有 对应的值: 对于 单个占位符,例如"?",打印完整占位符"?"; 对于 变量占位符,则只打印占位变量,例如"${name}",只打印"name";格式化时,如果 占位符 没有 对应的值,则打印完整占位符 对于 变量占位符,例如"${name}",原样打印"${name}"格式化时,如果 占位符 没有 对应的值,则抛出异常格式化时,如果 占位符 对应的值为null,则使用 默认值,如果 没有默认值,则抛出异常格式化时,如果 占位符 对应的值为null,则打印""空字符串格式化时,如果 占位符 对应的值为null,则打印"null"字符串格式化时,如果 占位符 对应的值为null,则原样打印占位符 对于 变量占位符,输出完整占位符,例如"${name}",打印"${name}"解析时,在 结果中 将 默认值 转为null解析时,占位符 对应的值为 空字符串,将 这个空字符串 转为 默认值,如果 没有默认值,则转为null解析时,占位符 对应的值为 空字符串,将 这个空字符串 转为null解析时,结果中 不包含 默认值,只要等于默认值,都忽略解析时,占位符 对应的值为 空字符串,结果中 不包含 这个空字符串解析时,占位符 对应的值为"null"字符串,结果中 不包含 这个值解析时,结果中 包含 默认值,原样返回解析时,占位符 对应的值为"null"字符串,在 结果中 保留字符串形式"null"解析时,占位符 对应的值为 空字符串,结果中 依然保留 这个空字符串解析时,占位符 对应的值为"null"字符串,在 结果中 转为null -
Method Summary
Modifier and TypeMethodDescriptionintclear(int features) 在 策略值 中移除 当前策略booleancontains(int features) 是否为当前策略static intof(StringTemplate.Feature... features) 计算 总的策略值intset(int features) 在 策略值 中添加 当前策略static StringTemplate.FeatureReturns the enum constant of this class with the specified name.static StringTemplate.Feature[]values()Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
FORMAT_MISSING_KEY_PRINT_WHOLE_PLACEHOLDER
格式化时,如果 占位符 没有 对应的值,则打印完整占位符 对于 变量占位符,例如"${name}",原样打印"${name}"默认策略
-
FORMAT_MISSING_KEY_PRINT_DEFAULT_VALUE
格式化时,如果 占位符 没有 对应的值,则打印 默认值,如果 没有默认值,则抛出异常 -
FORMAT_MISSING_KEY_PRINT_NULL
格式化时,如果 占位符 没有 对应的值,且没有默认值,则打印"null"字符串 -
FORMAT_MISSING_KEY_PRINT_EMPTY
格式化时,如果 占位符 没有 对应的值,则打印 空字符串该策略意味着 模板存在默认值,且为 空字符串
-
FORMAT_MISSING_KEY_PRINT_VARIABLE_NAME
格式化时,如果 占位符 没有 对应的值: 对于 单个占位符,例如"?",打印完整占位符"?"; 对于 变量占位符,则只打印占位变量,例如"${name}",只打印"name"; -
FORMAT_MISSING_KEY_THROWS
格式化时,如果 占位符 没有 对应的值,则抛出异常 -
FORMAT_NULL_VALUE_TO_STR
格式化时,如果 占位符 对应的值为null,则打印"null"字符串默认策略
-
FORMAT_NULL_VALUE_TO_EMPTY
格式化时,如果 占位符 对应的值为null,则打印""空字符串 -
FORMAT_NULL_VALUE_TO_WHOLE_PLACEHOLDER
格式化时,如果 占位符 对应的值为null,则原样打印占位符 对于 变量占位符,输出完整占位符,例如"${name}",打印"${name}" -
FORMAT_NULL_VALUE_TO_DEFAULT_VALUE
格式化时,如果 占位符 对应的值为null,则使用 默认值,如果 没有默认值,则抛出异常 -
MATCH_KEEP_DEFAULT_VALUE
解析时,结果中 包含 默认值,原样返回默认策略
-
MATCH_IGNORE_DEFAULT_VALUE
解析时,结果中 不包含 默认值,只要等于默认值,都忽略即,返回的结果 map 中 不会包含 这个key
在 基于下标的解析方法中 不生效,基于下标的解析结果只区分是否为
null,元素数量是固定的 -
MATCH_DEFAULT_VALUE_TO_NULL
解析时,在 结果中 将 默认值 转为null返回的结果 map 中 包含 这个key
-
MATCH_EMPTY_VALUE_TO_NULL
解析时,占位符 对应的值为 空字符串,将 这个空字符串 转为null默认策略
-
MATCH_EMPTY_VALUE_TO_DEFAULT_VALUE
解析时,占位符 对应的值为 空字符串,将 这个空字符串 转为 默认值,如果 没有默认值,则转为null -
MATCH_IGNORE_EMPTY_VALUE
解析时,占位符 对应的值为 空字符串,结果中 不包含 这个空字符串即,返回的结果 map 中 不会包含 这个key
在 基于下标的解析方法中 不生效,基于下标的解析结果只区分是否为
null,元素数量是固定的 -
MATCH_KEEP_VALUE_EMPTY
解析时,占位符 对应的值为 空字符串,结果中 依然保留 这个空字符串 -
MATCH_NULL_STR_TO_NULL
解析时,占位符 对应的值为"null"字符串,在 结果中 转为null默认策略
-
MATCH_KEEP_NULL_STR
解析时,占位符 对应的值为"null"字符串,在 结果中 保留字符串形式"null" -
MATCH_IGNORE_NULL_STR
解析时,占位符 对应的值为"null"字符串,结果中 不包含 这个值即,返回的结果 map 中 不会包含 这个key
在 基于下标的解析方法中 不生效,基于下标的解析结果只区分是否为
null,元素数量是固定的
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum class has no constant with the specified nameNullPointerException- if the argument is null
-
of
计算 总的策略值- Parameters:
features- 策略枚举数组- Returns:
- 总的策略值
-
contains
public boolean contains(int features) 是否为当前策略- Parameters:
features- 外部的策略值- Returns:
- 是否为当前策略
-
set
public int set(int features) 在 策略值 中添加 当前策略- Parameters:
features- 外部的策略值- Returns:
- 添加后的策略值
-
clear
public int clear(int features) 在 策略值 中移除 当前策略- Parameters:
features- 外部的策略值- Returns:
- 移除后的策略值
-