Delphi 一般清单和重复记录

Delphi 一般清单和重复记录,delphi,delphi-xe2,Delphi,Delphi Xe2,使用通用TList集合:是否有检测重复记录的功能,或者我是否需要搜索所有记录并检查单个字段是否重复?通用TList有一个可用于检测重复记录的Contains方法。但是您必须自己调用它,因为没有与TStringList相同的重复属性 如果您的数据可以与二进制比较进行比较,那么就没有更多的事情要做了。否则,您需要提供一个自定义比较器。IndexOf(在这种情况下甚至更好地包含)for records仅在可以进行二进制比较时才起作用。例如,如果该记录中有一个字符串,则必须定义自己的比较器,并在创建列表

使用通用
TList
集合:是否有检测重复记录的功能,或者我是否需要搜索所有记录并检查单个字段是否重复?

通用TList有一个可用于检测重复记录的Contains方法。但是您必须自己调用它,因为没有与TStringList相同的重复属性


如果您的数据可以与二进制比较进行比较,那么就没有更多的事情要做了。否则,您需要提供一个自定义比较器。

IndexOf(在这种情况下甚至更好地包含)for records仅在可以进行二进制比较时才起作用。例如,如果该记录中有一个字符串,则必须定义自己的比较器,并在创建列表时将其传入。是否有任何原因不能回答您的问题?对于Stefan的评论,TList通常用于存储对象列表,因此IndexOf()和Contains()应该可以工作。如果您正在存储字符串,那么您也可以使用TStringList并设置Duplicates属性。