C#查找对象在ArrayList中出现位置的方法

Markdown格式说明:

  • 标题使用#号进行标记
  • 代码块使用```标记开头和结尾
  • 示例说明使用文本加代码块结合的方式

C#查找对象在ArrayList中出现位置的方法

在 C# 中,可以使用 ArrayList 类型来存储一些对象。有时候我们需要查找某个对象在 ArrayList 中出现的位置,这时候可以使用以下方法对 ArrayList 进行搜索:

int index = ArrayList.IndexOf(object value);

其中,ArrayList.IndexOf 方法返回指定对象在 ArrayList 中第一次出现的索引,如果未找到该对象,则返回 -1。

以下是两个示例:

示例1:查找字符串在 ArrayList 中第一次出现的位置

using System;
using System.Collections;

class Program
{
    static void Main()
    {
        ArrayList arrList = new ArrayList();
        arrList.Add("apple");
        arrList.Add("banana");
        arrList.Add("pear");
        arrList.Add("orange");

        string targetString = "banana";
        int index = arrList.IndexOf(targetString);

        if (index != -1)
        {
            Console.WriteLine("The index of {0} is {1}", targetString, index);
        }
        else
        {
            Console.WriteLine("The target string is not found in the ArrayList.");
        }
    }
}

运行结果:

The index of banana is 1

示例2:查找自定义类在 ArrayList 中第一次出现的位置

using System;
using System.Collections;

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

class Program
{
    static void Main()
    {
        ArrayList arrList = new ArrayList();
        arrList.Add(new Student { Name = "Tom", Age = 18 });
        arrList.Add(new Student { Name = "Jerry", Age = 20 });
        arrList.Add(new Student { Name = "Adam", Age = 21 });
        arrList.Add(new Student { Name = "Eva", Age = 20 });

        Student targetStudent = new Student { Name = "Jerry", Age = 20 };
        int index = arrList.IndexOf(targetStudent);

        if (index != -1)
        {
            Console.WriteLine("The index of target student is {0}", index);
        }
        else
        {
            Console.WriteLine("The target student is not found in the ArrayList.");
        }
    }
}

运行结果:

The index of target student is 1

以上是 C# 中查找对象在 ArrayList 中出现位置的方法和示例。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#查找对象在ArrayList中出现位置的方法 - Python技术站

(0)
上一篇 2023年5月31日
下一篇 2023年5月31日

相关文章

  • C#在复杂多线程环境下使用读写锁同步写入文件

    使用读写锁同步写入文件可以在复杂多线程环境下有效地保证数据的一致性和并发性。下面是使用C#实现该功能的攻略: 1.了解读写锁 读写锁是一种在多线程环境下保证数据一致性和并发性的解决方案,其主要思想为:在读多写少的情况下,允许多个线程同时读取数据,但只允许一个线程写入数据。当有线程在写入数据时,其他线程无法读取或写入数据。 2.创建读写锁对象 C#提供了读写锁…

    C# 2023年5月15日
    00
  • C#使用回溯法解决背包问题实例分析

    C#使用回溯法解决背包问题实例分析 背包问题 给定一个固定大小、能够携重量的背包和一组物品,其中每个物品都有自己的重量和价值,在保证不超过背包重量的前提下,如何选择物品使得背包中物品的总价值最大。 问题分析 实际上,背包问题的本质是在不断做出选择中寻找最优解。每次可以选择将物品放入背包或不放入。可以使用回溯法解决该问题。 回溯法常用于解决在一组可能的解中找到…

    C# 2023年6月7日
    00
  • c#中的泛型委托详解

    下面是对泛型委托在C#中的详细讲解及示例说明: 泛型委托的概念 泛型委托(Generic Delegate)是一个带有泛型参数的委托,具有良好的扩展性和通用性,可以适配各种需求,使代码更加简洁、灵活。在泛型委托的定义中,可以指定一个或多个泛型类型参数,可以用于引用任意返回值和参数的委托类型。 在C#中,使用Func<>和Action<&gt…

    C# 2023年6月1日
    00
  • C#实现读取写入Json文件

    下面是详细的C#实现读取写入JSON文件的攻略: 1. Json.Net 库的引用 C#中常用的第三方JSON库是Json.Net,需要先引用它。可以通过NuGet来安装,在项目目录下执行以下命令: Install-Package Newtonsoft.Json 或在Visual Studio中通过菜单命令:Tools-> NuGet Package …

    C# 2023年5月31日
    00
  • C#实现读取匿名对象属性值的方法示例总结

    针对此话题,下面我来详细讲解C#实现读取匿名对象属性值的方法示例总结的完整攻略。 什么是匿名对象 匿名对象是一种没有具体类名的对象,可以快速创建临时对象来存储数据。使用匿名对象可以避免编写大量的类定义,适合那些只需要在很短时间内存储数据的情况。 获取匿名对象属性值的方法 方法一:使用dynamic类型获取属性值 使用dynamic关键字可以通过属性名称直接获…

    C# 2023年6月1日
    00
  • CommunityToolkit.Mvvm8.1 IOC依赖注入控制反转(5)

      本系列文章导航 https://www.cnblogs.com/aierong/p/17300066.html https://github.com/aierong/WpfDemo (自我Demo地址) 希望提到的知识对您有所提示,同时欢迎交流和指正 作者:aierong出处:https://www.cnblogs.com/aierong     说明 …

    C# 2023年4月17日
    00
  • C#特性-对象集合初始化器介绍

    C#特性-对象集合初始化器是一种简化代码编写的特性,可以快速且易于阅读地创建和初始化对象和集合。下面我们来详细讲解它的使用方法: 1. 对象初始化器 在使用对象初始化器的时候,可以直接在创建对象的同时,对其字段和属性进行赋值。下面是一个示例: public class Person { public string Name { get; set; } pub…

    C# 2023年6月1日
    00
  • 如何用C#在PC上查找连接蓝牙设备并实现数据传输

    一、前言 本文将会详细介绍如何使用C#语言在PC上实现蓝牙设备的搜索与数据传输。在使用之前我们需要先安装对应的.net Framework和Win32 API支持库文件。 二、搜索蓝牙设备1. 使用WMI查找我们可以使用WMI对象获取当前计算机中的所有蓝牙设备并进行遍历。搜索蓝牙设备可以通过以下代码实现: ManagementObjectSearcher s…

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