C# Contains(Object):确定集合是否包含指定对象

C# Contains(Object)

方法介绍

C#中的Contains(Object)方法用于判断集合中是否包含指定的元素。方法的参数是一个Object类型的参数,表示要查找的元素。

该方法返回一个bool类型的值,如果指定元素在集合中存在,返回true,否则返回false。

语法

public bool Contains(Object value);

示例说明

示例1:在List中查找指定元素

在以下示例中,我们将创建一个List对象,并使用Contains方法来查找该集合中是否包含指定元素。

using System;
using System.Collections.Generic;

class Program
{
    static void Main(string[] args)
    {
        List<string> fruits = new List<string>() {"apple", "banana", "orange", "grape"};

        bool containsOrange = fruits.Contains("orange");
        bool containsMango = fruits.Contains("mango");

        Console.WriteLine("List contains 'orange': " + containsOrange);
        Console.WriteLine("List contains 'mango': " + containsMango);
    }
}

示例2:在HashSet中查找对象

在以下示例中,我们将创建一个HashSet对象,并使用Contains方法来查找该集合中是否包含指定元素。

using System;
using System.Collections.Generic;

class Program
{
    static void Main(string[] args)
    {
        HashSet<Person> persons = new HashSet<Person>() {new Person{Name = "Alice", Age = 20}, new Person{Name = "Bob", Age = 25}};

        bool containsBob = persons.Contains(new Person{Name = "Bob", Age = 25});
        bool containsJohn = persons.Contains(new Person{Name = "John", Age = 30});

        Console.WriteLine("HashSet contains 'Bob': " + containsBob);
        Console.WriteLine("HashSet contains 'John': " + containsJohn);
    }
}

class Person
{
    public string Name { get; set; }
    public int Age { get; set; }

    public override bool Equals(object obj)
    {
        if (obj == null || !(obj is Person))
            return false;

        Person p = (Person)obj;
        return Name == p.Name && Age == p.Age;
    }

    public override int GetHashCode()
    {
        return Name.GetHashCode() ^ Age.GetHashCode();
    }
}

在上述示例中,我们在Person类中重写了Equals和GetHashCode方法,以便于Contains方法对Person对象的比较。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# Contains(Object):确定集合是否包含指定对象 - Python技术站

(0)
上一篇 2023年4月19日
下一篇 2023年4月19日

相关文章

  • ASP.NET Core 中的Main方法详解

    下面是关于“ASP.NET Core 中的 Main 方法详解”的完整攻略。 Main 方法详解 在 ASP.NET Core 中,Main 方法是整个应用程序的入口点,它是在应用程序启动时第一个被调用的方法。Main 方法由运行时负责调用,你可以在其中执行一些初始化的工作,比如配置、依赖注入等。 Main 方法的签名如下: public static vo…

    C# 2023年5月31日
    00
  • Unity实现文本转贴图

    文本转贴图是游戏开发过程中常用的一种技术手段,它可以使得游戏中的文本内容更加丰富、生动,提高游戏的表现力。本文将详细介绍Unity如何实现文本转贴图。 1. 准备工作 1.1 导入相关资源 在Unity中我们需要使用Text Mesh Pro插件来实现文本转贴图。导入Text Mesh Pro插件后,我们需要将场景中需要转换的文本对象替换成TextMeshP…

    C# 2023年6月3日
    00
  • C# DataTable数据遍历优化详解

    当处理大数据量的DataTable时,常常需要考虑优化数据遍历的性能,这里将介绍一些优化技巧来提高C#的DataTable遍历速度。 1. 使用索引来提高DataTable遍历性能 使用索引是数据检索的一种高效方式。在DataTable中使用PrimaryKey,可以基于每个列的唯一值来创建索引。通过使用PrimaryKey,可以遍历DataRow的速度被大…

    C# 2023年5月31日
    00
  • C# DataTable中查询指定字段名称的数据

    我来给你讲解一下如何在C# DataTable中查询指定字段名称的数据。 准备工作 在进行查询操作前,需要确保已经成功创建了DataTable对象并添加数据。我这里就简单演示一下的创建一个DataTable,并给它添加两列数据: DataTable dt = new DataTable(); dt.Columns.Add("Name", …

    C# 2023年6月7日
    00
  • javascript 节点排序实现代码

    下面是关于“javascript 节点排序实现代码”的完整攻略。 一、准备要排序的节点 首先,需要获取需要排序的节点,并将它们存入到一个数组中,以便进行排序操作。可以通过以下方式获取需要排序的节点: const nodes = document.querySelectorAll(‘.node’); // 获取所有需要排序的节点 二、将节点进行排序操作 在获取…

    C# 2023年6月8日
    00
  • unity 切换场景不销毁物体问题的解决

    下面是详细讲解 “Unity切换场景不销毁物体问题的解决” 的完整攻略。 问题描述 在Unity中,切换场景时,场景中的物体通常都会被销毁并重新创建。但是,在某些情况下,我们希望在切换场景时不销毁某些物体,例如UI、游戏内人物等。那么该如何解决这个问题呢? 解决方法 方法一:使用DontDestroyOnLoad() Unity提供了DontDestroyO…

    C# 2023年6月3日
    00
  • Lua中的元表与元方法学习总结

    Lua中的元表与元方法学习总结 Lua中的元表和元方法是Lua语言非常重要的特性之一。通过元表和元方法,我们可以改变数据的默认行为,实现类似于面向对象的特性。 什么是元表 元表是一个Lua表,用来定义某种类型的数据的默认行为。在Lua中,每种数据类型都有一张对应的元表。 我们可以使用函数setmetatable来为某种数据类型设置元表。如果一个数据类型没有元…

    C# 2023年6月6日
    00
  • Unity ScrollView实现自动吸附效果

    我将详细讲解一下“Unity ScrollView实现自动吸附效果”的完整攻略。 一、准备工作 创建一个空的Unity项目 创建一个Canvas,将Canvas的Render Mode设置为Screen Space – Overlay 在Canvas下面创建一个ScrollView,将ScrollView的Content的Layout Group设置为Ver…

    C# 2023年6月3日
    00
合作推广
合作推广
分享本页
返回顶部