【C#】中IndexOf的用法

在 C# 中,IndexOf 方法是字符串和列表(如 List<T>)等数据结构中常用的方法,用于查找指定元素或子串首次出现的位置。以下是针对不同情况使用 IndexOf 的示例。

对于字符串

对于字符串类型,IndexOf 方法返回子字符串在原始字符串中的起始位置索引,如果没有找到则返回 -1。

基本用法如下:

cs 复制代码
string str = "Hello, world!";
int index = str.IndexOf("world"); // index 将会是 7

IndexOf 方法还有重载版本,可以接受额外参数:

  • startAt: 指定从字符串的哪个位置开始搜索。
  • count: 指定要搜索的字符数。
  • comparisonType: 指定比较时是否区分大小写。

示例:

cs 复制代码
string str = "Hello, hello!";
int index = str.IndexOf("hello", StringComparison.OrdinalIgnoreCase); // index 将会是 0
index = str.IndexOf("hello", 7, StringComparison.OrdinalIgnoreCase); // index 将会是 7

对于 List<T>

对于 List<T> 类型,IndexOf 方法返回指定元素在列表中的索引,如果列表中不包含该元素,则返回 -1。

基本用法如下:

cs 复制代码
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
int index = numbers.IndexOf(3); // index 将会是 2

如果列表中的元素类型是引用类型,你可以传递任何与列表元素类型兼容的对象给 IndexOf 方法。

完整示例代码

下面是一个完整的示例程序,演示了如何使用 IndexOf 方法:

cs 复制代码
using System;

class Program
{
    static void Main()
    {
        string text = "Welcome to the C# programming language.";
        
        Console.WriteLine("Index of 'C#': " + text.IndexOf("C#")); // 输出: Index of 'C#': 16
        
        List<string> languages = new List<string> { "Java", "C#", "Python", "JavaScript" };
        
        Console.WriteLine("Index of 'C#': " + languages.IndexOf("C#")); // 输出: Index of 'C#': 1
    }
}

List<T>相关链接

【C# 】 一个List<T> 如何快速的知道里面的最大、最小、平均值呢?_c#获取list集合中的最大最小值-CSDN博客文章浏览阅读296次。【C# 】 一个List 如何快速的知道里面的最大、最小、平均值呢?_c#获取list集合中的最大最小值https://blog.csdn.net/wangnaisheng/article/details/140514960

C# 快速把List<string>集合转换成一个字符串_list 转字符串-CSDN博客文章浏览阅读892次。C# 快速把List集合转换成一个字符串_list 转字符串https://blog.csdn.net/wangnaisheng/article/details/138717158

C# 对List<T>取交集、差集以及并集-CSDN博客文章浏览阅读2.5k次。C# 对List取交集、差集以及并集https://blog.csdn.net/wangnaisheng/article/details/131391464

相关推荐
czhc11400756633 小时前
同值短路与单一真值源:属性不是命令,状态只有一个家
c#
下页、再停留8 小时前
【C#桌面客户端系列学习-15】生成可视化图表之折线图、柱状图、饼状图
开发语言·c#
波力海苔夹心脆67513 小时前
VisionMaster 两级位置修正实战:塑料外壳与金属件装配角度检测
经验分享·计算机视觉·c#·visionmaster·海康机器人·位置修正
小羊没烦恼!15 小时前
C#综合揭秘——Entity Framework 并发处理详解
java·开发语言·前端·javascript·数据库·mysql·c#
淡海水16 小时前
05-02-源码-Boehm GC标记阶段
算法·unity·c#·游戏引擎·gc
信可维16 小时前
AI 读 Word 表格总读错?先查合并单元格和表头这 3 处
开发语言·人工智能·c#·word·软件工程
半摆烂日常18 小时前
手机表单的左滑操作:触摸事件的处理细节
大数据·开发语言·人工智能·智能手机·https·c#
绛橘色的日落(。・∀・)ノ19 小时前
C#学习笔记
笔记·学习·c#
asdzx6719 小时前
C# 将 HTML 转换为 PDF:基于 Chrome 的转换方案
pdf·c#·html
1-1=020 小时前
.NET 实现后台任务
c#·.net·.netcore·quartz·hangfire