00:00
下边呢,我们来看另外一个数据类型叫集合,集合呢翻译成这个英文,它是set set,那么red这个set呢,它也是字符串类型的集合,而且呢,它默认是无序的,那底层呢,它的结构是这个结构啊,它的结构是哈希table的一种数据结构。那么赛呢,也可以存放很多的字符串元素,但是有几个特点,大家看到第一个特点呢,是。元素首先是没有顺序的,跟前面刚好不一样,第二个呢,还有一个不一样,就是元素的值是不可以重复的,就你比如说你放了个AA,你再放一个BBBBB的话就报错了。啊,所以说它有两个特点,第一个是无序,第二个是不能重复,那什么情况下可能用到这个东西,大家想一想对吧,比如说我们要存放一些这个,呃,人名,但是呢,我们要求人的名字不能重复,你就可以用set。那举个例子吧,同学们看,比方说我要存放多个电子邮件,多个电子邮件,但是我们认为电子邮件是不可以重复的,显然理论上说,在我们这个现实的生活中啊,电子邮件都不应该是有重复的。
01:12
你想一想,肯定是这样子的,哪个电子邮件会有两个相同的电子邮件,那肯定电子邮件就发不过去了,所以说用这个晒来存放特别的合适,那比如说这个时候这个K就是email值呢,就是里面的电子邮件的地址。好,我们来举个例子吧,好,我们来举个快速入门案例,好,我们来看一下。嗯,比如说S艾特,比如说我要提存很多电子邮件mail,好第一个mail汤姆搜狐点com,搜狐点com好再来一个Jack。哦,qq.com回车进去了,那同学看到现在呢,我们添加的顺序是汤姆在前,接体在后,但是我们在取的时候会不会也是这样子的呢?我们来看看,取的时候可以用s members就全部取出来了。
02:05
S member。Members啊,大家看到emails回车,同学们可以看到啊,现在呢,是汤姆Jackie都有。好像是有顺序是吧,我们再取一下,呃,我们再重新加,多加几个吧,在这基础上再多多加几个,看它有效果。比如说现在我又加几个叫KK。呃,悠悠点。com。好,YY搜狐点。com回去进去,好,加进去了,我们再来s members。看这个顺序,你看明显就感觉没有顺序了,你看KKK明明是在后面加入的,他跑到前面去了,跑前面去,而YYY呢,它就是在最后加的,他还在后面说这个是没有顺序的啊,同学们没有顺序,没有顺序它是无序的,那么再看它的一个特点,它是不可以重复的,比如说SI的,我还加emails。
03:03
哦,Emails。我还想加一个汤姆点搜狐点com,原先已经有一个汤姆搜狐点com了,你再一回车就发现零零代表什么呢?就说我没有加进去啊,零代表没有加进去,所以它有这这么几个特点啊,好同学们,我把它进一个板书。基本使用并不难,好,很简单走,这是一个案例。来给大家一个标题三,标题三。那么我们做了一个这样的演示,先说了一下ready式它的,呃,就是那个集合的一个基本使用。它的一个基本使用好板书到这里,这个地方有个概念啊,它是什么,底层是怎么实现的,有个概念。好,然后呢,我这做了一个案例举例说明,把这个举例呢给大家阐述到这里。对,怎么举的例呢?很简单,这样写的,从这开始的同学们看一下。
04:01
I,哎,从这里开始。大家看一下具体使用,我就不一个演示了啊,注意这个就是往里面添加。这个就是往里面加东西,这个呢是取出所有的,从这个集合里面取出所有的元素,从集合中啊,从这个集合啊,集合中集合中取出,取出所有的所有的这个元素,OK,好,我先把它放在笔记里边去。板述一下。那关于这个集合的一个基本使用呢,就到这我们来看一下集合的一个其他相关的指令,大家看这里除了刚才演示的SI的之外呢,还有s members,刚才已经去讲过了,取出所有值,另外呢,还有两个需要同学们掌握的,一个是is member,听这个名字就知道了,它是判断里面有一个值是不是存在。
05:00
这个很有用,你比如说将来我们想去判断你存放的电子邮件里面有没有这个电子邮件呢?诶可以用is member那给大家做一个小小的演示,比如说。Is member。Member。好,同学们看到,假设我要在email这个集合里面看你有没有汤姆呢?有没有汤姆,汤姆搜狐呢?回车,如果有的话,会返回一个一。啊,那么假设我说,哎,有没有一个汤姆波浪号这个呢,返回零就说没有,非常简单,这是一个查是不是成元元素,还有一个呢,删除指定的值,比如说里面有一个元素你不想要了,这个肯定有这个需求,比如有电子邮件,你发现这个电子邮件这个人已经走了,你也可以把它删除掉,怎么删除呢?非常简单啊,SRM。Remove嘛,RM就是单词remove的意思,简写的啊,然后呢,我们找emails emails。
06:02
MAS,我要把哪个去掉呢?我就把汤姆的这个搜狐去掉。回车干掉了,如果你删除成功了,会返回一个一删除没有成功返回一个零,我们再看现在还有没有,我用这个s member把它就都取出来。来,走一个emails,一回车,发现汤姆被你干掉了啊,非常简单,那么这其实就是增加。删除修改就是继续用这个ID啊,修改就是继续用这个ID,然后呢,这个修改就添啊修改不是啊,这个S就是就是添加,那么这个是取出所有值啊取出所有值,好这个是一个小案例,小案例我们也把它先给大家啊整理到笔记里面去。好,刚才呢,演示我这演示的不是地址啊,演示的是添加多个电子邮件信息。电子邮件信息好了,同学们来,接着往下看,接着往下看常用的指令。
07:05
好,这个地方是我们的标题三,对不对?标题三我又举了个小案例,把它的另外几个指令做了一个介绍,比如说ADD members。啊,还有is member,还有一个RM,那演示这个案例呢,给大家也板述到我们的笔记里面来,怎么说的呢,各位同学诶,刚才老师讲的呢,其实就这这么几个小案例,SI。来看这里。对,一个是is。对,如果是的话,就返回一个一,呃,如果不是返回一个零,还有一个删除啊删除。好,这个呢,就先说到这儿。好,这里面呢,还有一个作业,这个作业呢,就先暂时不做了啊同学们这个应该是比较简单的,这个我相信同学们都能做出来,不不难,好,这个作业我给他板出到这里就行了,同学们有兴趣的时候呢,中午直接练练。
08:00
好,Side一个课堂练习,这个案例同学们下午去做好,那关于side的使用呢,我们就先介绍到这里。
我来说两句