C# HashSet

C# HashSet 用法

这个集合类包含不重复项的无序列表。这种集合称为“集(set)”。集是一个保留字,所以该类有另一个名称HashSet

using System.Collections.Generic;
using UnityEngine;

public class ConstTest : MonoBehaviour
{
    private static string[] hello = new string[] {"one","two","three","four" };
    HashSet<string> companyTeams = new HashSet<string>(hello);
    string[] world = new string[] { "one", "two"/*, "five", "six" */};
    private void Start()
    {
        #region HashSet<T>的修改方法 
        //bool isSuccess = companyTeams.Add("one");//如果某元素不在集合中,Add()方法就把该元素添加到集合中。在其返回值Boolean中,返回元素是否添加的信息
        //companyTeams.Clear();//方法Clear()删除集合中的所有元素
        //companyTeams.Remove("one");//Remove()方法删除指定的元素

        //string[] CopyTemp=new string[companyTeams.Count];//  CopyTo()把集合中的元素复制到一个数组中
        // companyTeams.CopyTo(CopyTemp);

        //string[] world = new string[] {"one","two","five","six"};
        //companyTeams.UnionWith(world);//UnionWith()方法把传送为参数的集合中的所有元素添加到集中

        //companyTeams.IntersectWith(world);// IntersectWith()修改了集,仅包含所传送的集合和集中都有的元素
        //companyTeams.ExceptWith(world);//ExceptWith()方法把一个集合作为参数,从集中删除该集合中的所有元素

        //companyTeams.RemoveWhere(isString); //RemoveWhere()方法需要一个Predicate<T>委托作为参数。删除满足谓词条件的所有元素

        //foreach (var item in companyTeams)
        //{
        //    Debug.Log(item);
        //}
        #endregion
        #region HashSet<T>的验证方法 
        //bool value = companyTeams.Contains("one");//如果所传送的元素在集合中,方法Contains()就返回true
        //bool value = companyTeams.IsSubsetOf(world);//如果参数传送的集合是集的一个子集(参数完全相同),方法IsSubsetOf()就返回true,
        //bool value =companyTeams.IsSupersetOf(world);//如果参数传送的集合是集的一个超集,方法IsSupersetOf()就返回true
        //bool value =companyTeams.Overlaps(world);// 如果参数传送的集合中至少有一个元素与集中的元素相同,Overlaps()就返回true
        bool value =companyTeams.SetEquals(world);// 如果参数传送的集合和集包含相同的元素,方法SetEquals()就返回true
        Debug.Log(value);
        #endregion
    }

    private bool isString(string value)
    {
        if (value.Equals("one")) return true;
        else return false;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值