如何判断一个字符串存在于一个集合,并得出它的位置? ( 积分: 30 )

  • 主题发起人 主题发起人 cqytech
  • 开始时间 开始时间
C

cqytech

Unregistered / Unconfirmed
GUEST, unregistred user!
如,我一个字段串集合:
{'abc','a2','a3','a4'}
则'a2'存在于这个集合,它的索引号为2

谢谢
 
集合能使用字符串吗?应该是字符串数组吧?
 
我实现就好
 
用个循环就可以了
 
集合中元素不能为字符串,integer等,
你可以用字符串数组,
或者干脆简单点用tstrings类来做,非常简单有效.
var
sl: tstrings;
sl.add('abc');
sl.add('a2');
...
求索引为 iPosition:= sl.indexOf('abc');
if iPosition = -1 then
showMessage('not exsit');

顺便提一下,集合是无序性,互异性,确定性的;
你说什么"则'a2'存在于这个集合,它的索引号为2"
,集合中有索引号这个概念吗,集合是无序的呀.

某元素是否在集合中的判断.
procedure TForm1.Button1Click(Sender: TObject);
var
xx: set of char;
begin
xx := ['a','b','c'];
if 'd' in xx then
{...}
end;
 
to lisongmagic:

你的方法不错,谢谢!

再等等看看有更好的方法吗?

结贴再给分.
 
谢谢夸奖,啊哈哈
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部