MrB*_*liz -3 .net c# string indexof .net-4.5
var str = "GB29NWBK60161331926819"
foreach (var item in str.ToCharArray())
{
Debug.WriteLine(str.IndexOf(item));
}
Run Code Online (Sandbox Code Playgroud)
给出输出
0 1 2 3 4 5 1 7 8 9 10 8 10 13 13 10 3 2 8 19 10 3
我在期待
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
是这个还是一个bug还是我的假设不正确?
它为您提供字符串中第一次出现的索引.
查看输入字符串,当它到达1时它会给你索引10,当它到达下一个1时,它会再次给你.
这是文档对此方法所说的内容:
报告此实例中第一次出现的指定字符串的从零开始的索引.
编辑:ElementAt(int index)期待一个索引.使用它会在第一个字母崩溃G.它需要UTF-16-Code,它是71并突破界限.
你的期望会因此而满足:
var str = "GB29NWBK60161331926819";
for (int i = 0; i < str.Length; i++)
{
Debug.WriteLine(i);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
97 次 |
| 最近记录: |