2017-08-10 59 views
1

我目前正在设计一个系统,它需要将事件对象E与对象C相匹配,并在配置中定义属性。在配置中将会有多个对象与之匹配。 E有很多属性,来自外部系统。该配置将是通用的,因为可以定义多个C对象内的任何属性来匹配E.例如,借此事件E传递给系统:使用多个属性找到匹配对象

E.a = 1 
E.b = 2 
... 
E.z = 26 

C对象在配置中定义:

C1.b = 2 
C1.z = 21 

C2.c = 3 
C2.d = 4 

C2将返回的匹配E.

我知道幼稚的算法将是通过每个C各个领域的重复,以匹配E,但我想如果这是找到匹配的最快方法E在所有C对象中。有什么想法吗?

+1

根据什么逻辑C2会返回匹配到E? – alexd

回答

0

设置每个对象所有字段的hashkey并进行比较。

+0

我不认为这是正确的解决方案。我可以散列配置属性来加速单个字段中的匹配,但我无法散列整个配置对象以匹配事件。我仍然需要遍历事件中的所有字段来查找匹配项,然后如果匹配项中有匹配项,则每次都需要检查其余字段。 – agjones

相关问题