禅与计算机程序设计艺术Kotlin精讲-黑马程序员(原创)Kotlin

kotlin精讲-第5章(13)set集合-中

2017-12-06  本文已影响148人  739c8d412b4c

set集合常见方法和属性

set集合可以理解为是一个容器,容器操作我们自然想到“增删改查”,可写集合才有“增删改查”,不可写集合只有“查”,这个点我们可以想到。但是set集合无序,所以没有“改查”,因为某个位置上是什么元素是不确定。

添加元素:add、addAll

相比于list集合的添加,少了在指定位置添加单个元素和多个元素的方法,因为set集合是无序的,无法指定添加位置。

我们编写一个案例,验证下,参考代码:

针对以上代码,我们看到调用addAll方法后,打印set集合的时候,元素变成了无序。

删除元素:remove、removeAll

删除元素,主要有如下几种方式:

相比于list,少了删除指定位置元素的方法

我们编写一个案例,验证下上面这些方法,参考代码:

修改元素:不支持

set集合没有位置的概念,所以,无法确定某一个位置的元素到底是什么,所以无法进行修改。参考截图:

查询元素:elementAt、elementAtOrNull

set集合根据索引位置获取元素,不是通过get方法,通过elementAt方法和elementAtOrNull方法。

我们通过一个案例,演示下两个api,参考代码:

是否包含元素:contains方法、containsAll方法

contains方法用于判断集合中是否存包含某个元素,方法接收参数为元素,返回值Boolean类型,方法定义如下:

contains方法用于判断集合中是否存包含多个元素,方法接收一个集合,返回值Boolean类型,方法定义如下:

我们通过一个案例,来看看集合元素是否包含操作,参考代码:

获取元素索引:indexOf方法

set集合可以通过indexOf、lastIndexOf获取索引。

indexOf()获取元素对应的位置,从集合开始位置开始查找,找到返回索引,没有找到返回-1。方法签名如下:

public fun indexOf(element: @UnsafeVarianceE): Int

lastIndexOf获取元素对应的位置,从集合结束位置开始查找,找到返回索引,没有找到返回-1。方法签名如下:

publicfun lastIndexOf(element: @UnsafeVariance E): Int

我们通过一个案例,来看看集合的是否包含,参考代码:

获取数组长度:size属性、count方法

同数组,同list集合,获取长度可以通过size属性和count方法去获取,参考代码:

[图片上传中...(image.png-f307ca-1512548540475-0)]

上一篇 下一篇

猜你喜欢

热点阅读