怎么解决两个TStringList的item对应关系?(10分)

  • 主题发起人 主题发起人 代码雪儿
  • 开始时间 开始时间

代码雪儿

Unregistered / Unconfirmed
GUEST, unregistred user!
var StrsA,StrsB:TStringList;
i:integer;
begin
StrsA:=TStringList.create;
StrsB:=TStringList.create;
//开始添加对应关系
for i:=0 to 100 do begin
StrsA.additem(intTostr(i));
StrsB.additem(intTostr(i));
end;
//这时候StrsA和StrsB是一一对应关系
//我不想用这种方法来对应,有没有别的办法?
end;
 
你添加的时候,是同一顺序,两个Stringlist的顺序是一样的啊。
strsA.strings=strsB.strings啊。
 
用TList类实现,定义一个结构
type
TMyRecord = record
i:integer;
j:integer;
end;
TList类对象的成员就是 TMyRecord 类型变量
 
一个StringList就可以满足你的要求,如果你只是要两个一一对应的话
可以用 = 号隔开
或者用AddObject的方式。
for i:=0 to 100 do begin
StrsA.additem(intTostr(i) + '= StrsB' + intTostr(i));
end;
那么 StrsA.Names为“=”号左边部份, StrsA.Values[StrsA.Names]为右半部份
 
多人接受答案了。
 
后退
顶部