美文网首页
12.集合类型-Set

12.集合类型-Set

作者: jetgege | 来源:发表于2017-11-21 15:21 被阅读14次


/**
 * 描述:集合类型 Set : 无序不重复
 * 主要方法: 交差并补
 * 作者:jet
 * 创建时间: 2017-11-20 14:11
 * 修改人:
 * 修改时间:
 * 修改内容:
 */

fun main(args: Array<String>) {

    //Set<类型> 或setOf(元素1,元素2,....,元素n)
    //大小固定,元素类型不可变

    // 地铁1号线: "罗湖站","国贸站","老街站","大剧院站","科学馆站", "华强路站","岗厦站", "会展中心站","购物公园站"
    //  "香蜜湖站、","车公庙站","竹子林站","侨城东站","华侨城站", "世界之窗站","白石洲站", "高新园站","深大站", "桃园站","大新站"
    //  "鲤鱼门站","前海湾站","新安站","宝安中心站","宝体站", "坪洲站","西乡站", "固戍站","后瑞站","机场东站"

    val lin1Step1 = setOf("罗湖站","国贸站","老街站","大剧院站","科学馆站", "华强路站","岗厦站", "会展中心站","购物公园站")
    val lin1Step2 = setOf("香蜜湖站、","车公庙站","竹子林站","侨城东站","华侨城站", "世界之窗站","白石洲站", "高新园站","深大站", "桃园站","大新站")
    val lin1Step3 = setOf( "鲤鱼门站","前海湾站","新安站","宝安中心站","宝体站", "坪洲站","西乡站", "固戍站","后瑞站","机场东站")
    //元素计数:count(),空否:isEmpty()\

    //检查是否包含某个元素: contains, 包含另一个Set: containsAll
    val lin1Tets1 = setOf("罗湖站","国贸站","老街站")
    println(lin1Step1.containsAll(lin1Tets1))

    //转化为数组:toTypedArray()
    val newArray =lin1Tets1.toTypedArray()
    for (s in newArray) {
        print(s+" ")
    }
    println()

    //集合之间的运算: intersect/subtract/union/minus(补集的被操作对象无须是Set类型)

    //转换为可变: toMutableSet

    //MutableSet<类型> 或 mutableSetOf(元素1, 元素2, ...,元素n)
    //大小可变,类型不可变
    val mutableMainLine =lin1Step1.union(lin1Step2).union(lin1Step3).toMutableSet()
    println(mutableMainLine.joinToString())

    //在末尾增加元素:add方法. 添加另一个集合: addAll方法
    mutableMainLine.add("罗湖站1")
    println(mutableMainLine.joinToString())
    val newsLines = setOf("罗湖站2","罗湖站3")
    mutableMainLine.addAll(newsLines)
    println(mutableMainLine.joinToString())


    //移出元素:remove, 移出另一个集合:removeAll
    mutableMainLine.remove("罗湖站1")

 //   mutableMainLine.removeAll(newsLines)
    println(mutableMainLine.joinToString())

}


出自:http://www.xiaoboswift.com/course/54

相关文章

网友评论

      本文标题:12.集合类型-Set

      本文链接:https://www.haomeiwen.com/subject/kfqwvxtx.html