NSSet集合 无序的 不能重复的

//
//  main.m
//  NSSet集合
//
//  Created by MAC on 15/12/15.
//  Copyright © 2015年 MAC. All rights reserved.
//

#import <Foundation/Foundation.h>
//1.不能重复
//2.无序的
int main(int argc, const char * argv[]) {
    @autoreleasepool {
      //无序的 效率高比数组高 但是不能索引
        NSArray *array = @[@"one",@"two",@"three",@"three",@"four",@"five"];

        NSLog(@"%@",array);
        //只有三个

        //可以使用数组初始化
        NSSet *set = [NSSet setWithArray:array];
        NSLog(@"%@",set);
        //可以赋值初始化
        NSSet *set1  = [NSSet setWithObjects:@"1",@"one",@"2",@"2",@"3",@"4",array, nil];
         NSSet *set2  = [NSSet setWithObjects:@"1",@"one",@"2",@"2",@"3",@"4", nil];
        NSLog(@"%@",set1);
       //可以用另外一个set
        NSSet *set3 = [NSSet setWithSet:set1];
        NSLog(@"%@",set3);
        //获得set集合的大小 不包括重复元素
        NSUInteger count = [set count];
        NSLog(@"%lu",count);
        //枚举
        NSEnumerator *e = [set objectEnumerator];
        NSString *s;
        while ((s=[e nextObject])!=nil) {
            NSLog(@"%@",s);
        }
        NSLog(@"------");
        // 判断某个对象是否是set成员 没有则为null
        id a = [set member:@"one"];
        NSLog(@"%@",a);
        //判断集合里面是否包含某个成员 返回值BOOL
        BOOL r = [set containsObject:@"one"];
        NSLog(@"%d",r);

        //将一个集合转换成数组
        NSArray *array1 = set.allObjects;
        NSLog(@"%@",array1);

        //获得集合中任意一个对象
        id aa = [set anyObject];
        NSLog(@"%@",aa);

        //判断两个集合是否相等
          r =[set isEqualToSet:set1];
        NSLog(@"%@",r==1?@"YES":@"NO");
        //判断两个set集合是否有交集
        r = [set intersectsSet:set1];
        NSLog(@"%d",r);

        //判断一个set是否是另外一个子集
        r = [set2 isSubsetOfSet:set1];
        NSLog(@"%d",r);
    }
    return 0;
}
时间: 2024-12-24 02:46:03

NSSet集合 无序的 不能重复的的相关文章

[OC Foundation框架 - 21] NSSet集合 &amp; 集合之间的转换

A.NSSet 跟NSArray一样,不可变 NSArray 自然顺序 NSSet是无序的 NSSet不允许存入重复元素,可以用来过滤重复元素 也有可变的NSMutableSet B.集合转换 1 // 1.NSArray 转换成 NSMutableArray 2 NSArray *array = @[@"one", @"two", @"three"]; 3 NSMutableArray *muArray = [NSMutableArrayarr

NSSet -- 集合&amp;&amp;NSMutableSet -- 可变集合

// // main.m // OC05-task-03 // // Created by Xin the Great on 15-1-25. // Copyright (c) 2015年 Xin the Great. All rights reserved. // #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { // insert code here.

去除List集合中的重复元素? 如果没有Set集合,List集合是怎么去除重复元素的(字符串类型,自定义类型)?

 关键字: 如果没有Set集合,List集合是怎么去除重复元素的(字符串类型)?  *   *     思考: List就可以存储重复元素,那么需求中容器中的元素必须保证唯一性,该如何解决呢??  *      *   去除List集合中的重复元素?  * * 思路: * * 1.首先我需要另一个临时容器tempList,用来存放我认为应该保留的元素.(也就是不重复的元素) * 2.然后我们应该遍历原容器, 一个一个的取出元素, 放入tempList. * 当tempList里已经装有刚刚取出的

CareerCup之2.1无序链表删除重复元素

[题目] 原文: 2.1 Write code to remove duplicates from an unsorted linked list. FOLLOW UP How would you solve this problem if a temporary buffer is not allowed? 译文: 从一个未排序的链表中移除重复的项 进一步地, 如果不允许使用临时的缓存,你如何解决这个问题? [分析] (1)如果可以使用额外的存储空间,我们就开一个数组来保存一个元素的出现情况.

ArrayList去除集合中字符串的重复值,只能在本集合内操作

/* * 需求:ArrayList去除集合中字符串的重复值,只能在本集合内操作 * * 分析: * 1.创建一个集合对象 * 2.添加多个字符串元素 * 3.用选择排序方法去比较 * A:如有相同的,则删除此元素 * B:没有,则保留 * 4.遍历输出 新集合 */ package com.ma.arraylist; import java.util.ArrayList; import java.util.Iterator; /** * ArrayList去除集合中字符串的重复值,只能在本集合内

【去除集合中字符串的重复值-2】

package com.yjf.esupplier.common.test; import java.util.ArrayList; import java.util.Iterator; /** * @author shusheng * @description 去除集合中字符串的重复值(字符串的内容相同) * @Email [email protected] * @date 2018/12/12 16:55 */ public class ArrayListDemo1 { public sta

【去除集合中字符串的重复值-1】

package com.yjf.esupplier.common.test; import java.util.ArrayList; import java.util.Iterator; /** * @author shusheng * @description 去除集合中字符串的重复值(字符串的内容相同) * @Email [email protected] * @date 2018/12/12 16:24 */ public class ArrayListDemo { /** * Array

set集合(set是一个无序且不重复的元素集合)

功能: 一.可以去掉列表,元组中的重复项 二.可以求交集,合集,差集等 def add(self, *args, **kwargs): """ 添加 """ s1 = (1,2,3,4,2,3,1)s3 = set(s1)s4 = s3.add(5)print(s1)print(s3)print(s4)(1, 2, 3, 4, 2, 3, 1){1, 2, 3, 4, 5}None def clear(self, *args, **kwargs)

HashSet -无序,不重复集合

1 package cn.learn.collection.Set; 2 3 import java.util.Objects; 4 5 public class IsPerson { 6 private int age; 7 private String name; 8 9 //ide自动生成 10 @Override 11 public boolean equals(Object o) { 12 if (this == o) return true; 13 if (o == null ||