这些是关于我要执行什么查询的示例类。
class TObject
{
String id;
public String getId()
{
return id;
}
public void setId(String id)
{
this.id=id;
}
}
class TStructure
{
TObject tObject;
public TObject getTObject()
{
return tObject;
}
public void setTObject(TObject tObject)
{
this.tObject=tObject;
}
}
class TStructureRow
{
TStructure tStructure;
TObject tObject;
public TStructure getTStructure()
{
return tStructure;
}
public void setTStructure(TStructure tStructure)
{
this.tStructure=tStructure;
}
public TObject getTObject()
{
return tObject;
}
public void setTObject(TObject tObject)
{
this.tObject=tObject;
}
}
我已经为我的示例xml数据创建了这些类来查询它们。我已经为这些类创建了Lists(数据)来保存它们中的数据。如何查询这些列表以更少的开销检索结果。 例如,这些是查询:
1)o<-tobject{tstructure}<-tstructure{tstructure_row})
含义:对于每个对象o,作为tstructure中的对象,返回tstructure的tstructure_row ......这是句法意义
2)o<-tobject{tstructure}<-tstructure{tstructure_row}::tobject{tobject | id = "XYZ"}<-tobject{tstructure}<-tstructure{structure_row}
含义:对于每个对象o,作为tstructure中的tsject,作为tstructurerow中的tstructure,tstructrow中的id为&#34; XYZ&#34;,对于这样的对象,作为tstructure in tstructure,作为tstructure行中的tstructure, return tstructurerow ....这是句法意义
我已经编写了一堆嵌套for语句,但我相信如果数据庞大,他们就会杀死我的处理器。我必须快速找到这些列表中的数据甚至是复杂的查询,例如在各自结构的子项目中搜索多个相关类型的tObject。
答案 0 :(得分:0)
如果您只想根据TObject
ID进行查询,请使用HashMap HashMap<String,List<TStructureRow>
。针对TObject的ID存储列表。您可以检索所有TStructureRow
对应的列表在(理论上)恒定平均时间内的特定TObject
id。