sdlicong 发表于 2012-8-23 12:43:32

delphi怎么迭代输出集合的元素啊

请大神教一下吧~谢啦~~~

hostmi 发表于 2012-8-25 10:55:21

俺也刚学,感觉这个板块不怎么活跃,都是发资源的比较多,加delphi群问下把,那里的人比较多,而且都是及时回答交流的

sdlicong 发表于 2012-8-25 21:39:01

谢谢楼上的同学啊~~加了几个DELPHI群,问了几嗓子一直也没人回答,回答的人都不会 ,貌似这玩意不常用

YOK 发表于 2020-3-24 21:54:22

本帖最后由 YOK 于 2020-3-24 22:02 编辑

2020年学习delphi,来回答这个远古问题,在小甲鱼教学视频(用户自定义类型2)中,提出了课后思考题,把有的元音字母显示出来,注意有颜色的那几行:
type //先定义类型
vowel = set of Char; //一个字符型集合
var//再定义变量
vowels: vowel;
str_1: string;
m: Integer; //循环变量
vchar:Char; //迭代输出的元素
s:string; //存放迭代输出元素的字符串,用作最后显示
begin
vowels := [];
str_1 := '';
s:='';
for m := 1 to Length(edt1.Text) do
begin
    str_1 := Copy(edt1.Text, m, 1);
    if ((str_1 = 'a') or (str_1 = 'A')) then
      vowels := vowels + ['a']; //集合的并集 --> Include(vowels,'a'); 集合是无序的
    if ((str_1 = 'e') or (str_1 = 'E')) then
      vowels := vowels + ['e'];
    if ((str_1 = 'i') or (str_1 = 'I')) then
      vowels := vowels + ['i'];
    if ((str_1 = 'o') or (str_1 = 'O')) then
      vowels := vowels + ['o'];
    if ((str_1 = 'u') or (str_1 = 'U')) then
      vowels := vowels + ['u'];
end;
if vowels = [] then
    ShowMessage('没有元音字母')
else
begin
    for vchar in vowels do//迭代输出
    s:=s+vchar; //字符串拼接
    ShowMessage('有元音字母:'+s);
end;

就可以进行集合的迭代显示了,目测这位楼主已经成为了编程大牛,不过路过学习delphi的小萌新还是可以看看哈!~~~
页: [1]
查看完整版本: delphi怎么迭代输出集合的元素啊