You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#控制台记事本foreach遍历笔记时序号全部为0问题求助

C#控制台记事本序号显示异常问题修复

问题根因

你代码中获取笔记序号的逻辑存在错误:
在foreach循环内调用i.IndexOf(i)时,i是当前遍历得到的单条笔记字符串,String.IndexOf()方法的作用是查找指定子串在当前字符串中的首次出现位置,你传入的子串是字符串本身,因此返回值永远为0,最终导致所有笔记前的序号都显示为0。

修复方案

以下两种实现均可正确输出笔记的顺序序号:

方案1:foreach循环配合独立计数器

修改case 2对应的代码块:

case 2:
    Console.WriteLine("你的笔记: ");
    // 初始化序号从0开始
    int indexNote = 0;
    foreach (string note in notes)
    {
        Console.WriteLine($"{indexNote}. {note}");
        // 遍历完一条笔记后序号自增
        indexNote++;
    }
    break;

方案2:改用for循环直接遍历索引

case 2:
    Console.WriteLine("你的笔记: ");
    for (int indexNote = 0; indexNote < notes.Count; indexNote++)
    {
        Console.WriteLine($"{indexNote}. {notes[indexNote]}");
    }
    break;

内容的提问来源于stack exchange,提问作者user12962135

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 23:27:04