如何判断一数组中a: array[1..10] of string没有重复值。

解决方案 »

  1.   

    请教代码怎么写?
    query2为缓存数据集,我想把query2的dmsl.query2['pmgk']保存在数组a 中,提交时判断有重复pmgk值。按照各位的方法,判断不了。请各位指点!
    procedure Txkssform.BitBtn8Click(Sender: TObject);
    var
    i,j:integer;
    spm1:string;
    begin
    if dmsl.Query2.recordcount>0 then
       begin
      dmsl.Query2.First;
     for i:=1 to  dmsl.Query2.recordcount do
       begin
         a[i]:=dmsl.query2['pmgk'];
         spm1:=spm[i];
       end;
      dmsl.Query2.First;
     end;for I := 1 to dmsl.Query2.recordcount do
      for J := I + 1 to dmsl.Query2.recordcount do
        if a[I] = a[J] then begin
          showmesage('有 处理重复情况');
          Break;
        end;
    非常感谢各位。
    这是在主从表缓存更新录入中,从表一次录入多条记录,先判断每条有没有重复货物名称,后提交。用主键(或唯一索引)时,因从表用了缓冲,故保存之前不能起作用。
    用循环判断效率不高。现有用一笨办法,那是将新增的将货品编号
    置一数组中,每次到本数组中查找。我想怎么能遍历数组
      

  2.   

    不要用数组,用tstringlist就可以实现你的功能
      

  3.   

    to : yq97001(yq97001) ( ) 
    请给一分代码,多谢谢!
      

  4.   

    to : yq97001(yq97001) ( ) 
    小弟正在做仿速达到2000进销存,急用!
      

  5.   

    我这里给个两重循环的判断
    integer i,j;
    bool u:=false;for i:=0 to 9 then
    begin 
      for j:=i+1 to 10 then
      begin
        if a[i] = a[j] then
        begin
           break;
           u := true;
        end;
      end;
    end;if u = true then
      有重复
    else
      无重复