请问各位大虾:我现在有两个tstringlist我想对其进行比较,从而判断是否有相同的值,
例如:
tstringlist1        tstringlist2
1                       1
2                       5
6                       7
我的要求是对这两个tstringlist进行判断,从而保证其中没有任何相同的值,请问该怎么实现比较好呢?

解决方案 »

  1.   

    不是,是判断这两个stringlist是否有任意相同的值,有高手帮一下忙吗,最好能做个函数.
      

  2.   

    用兩個循環來判斷items.indexof()就是,可能比較慢,不知到誰有更好的辦法?
      

  3.   

    function CheckTwoStringListHaveSameItem(strlst1, strlst2: TStringList): Boolean;
    //功能描述: 检查两个TStringList中是否有相同的值
    //入口参数:
    //  strlst1, strlst2 - 两个进行比较的TStringList
    //出口参数:
    //  函数返回值  - True表示有相同的值, False表示没有
    var
      iLoop : Integer;
    begin
      Result := False;
      if strlst1.Count < strlst2.Count then
      begin
        for iLoop := 0 to strlst1.Count - 1 do
          if strlst2.IndexOf(strlst1.Strings[iLoop]) >= 0 then
          begin
            Result := True;
            break;
          end
      end
      else begin
        for iLoop := 0 to strlst2.Count - 1 do
          if strlst1.IndexOf(strlst2.Strings[iLoop]) >= 0 then
          begin
            Result := True;
            break;
          end;
      end;
    end;