首页 > 解决方案 > IndexOf 在 c# 中不返回任何值

问题描述

这似乎是一个重复的问题,但事实并非如此。

我有一个简单的代码。有一个名为的字符串book,其值为"mybook"。我想在字符串中找到'y'字符的索引。"mybook"所以我使用了这段代码,但它没有返回'y'字符的索引。

string book = "mybook";
char y = 'y';
int yPosition = book.IndexOf(y);

Console.WriteLine("y position is: ", yPosition);

当我运行这段代码时,答案就是这个,仅此而已:

y position is: 

标签: c#stringindexof

解决方案


您忘记打印 yPosition 的值:

Console.WriteLine($"y position is: {yPosition}");

如果在此实例中未找到字符或字符串,则 IndexOf 方法返回-1 这就是为什么,你的变量yPosition应该总是有一些 int 值。如果您在该行设置断点,您可以检查它:

int yPosition = book.IndexOf(y);

推荐阅读