在Gosu Typelist中,<与>运算符比较类型代码的什么属性?
Gosu中TypeCode比较的依据属性
在Gosu里对两个TypeCode使用</>运算符时,默认是基于TypeCode定义中的**priority属性**进行数值比较的。
以你提供的Ext_Grade类型列表为例:
<typelist desc="Some Gradings" name="Ext_Grade" xmlns="http://guidewire.com/typelists"> <typecode code="0" desc="0" name="0" priority="00" retired="true"/> <typecode code="1" desc="1" name="1" priority="10"/> <typecode code="2" desc="2" name="2" priority="20"/> </typelist>
执行Ext_Grade.TC_1 < Ext_Grade.TC_2时,实际比较的是两者的priority值:TC_1的priority是10,TC_2的是20,10小于20,所以表达式结果为true。
需要注意:
priority虽以字符串形式配置,但比较时会按数值逻辑处理(比如"00"会被视为0,"10"视为10)- 若TypeCode未定义
priority属性,才会 fallback 到TypeCode的数据库ID进行比较,但这种场景极少,因为TypeCode通常都会配置priority来控制排序逻辑
内容的提问来源于stack exchange,提问作者Justin Audet
相关产品推荐
相关产品推荐

