数组,听着挺高大上,其实就像你刚买回来的那一堆文件,被你整齐地码在纸箱里。如果不拿出来看,这些文件就是一堆废纸。想让数组活起来,就得学会“遍历”——也就是一个个把文件拿出来检查。
C# 给了我们两种处理文件的方式,一个是“极客模式”,一个是“躺平模式”。
1. 极客模式:for 循环
for 循环就像是你自己拿着一本账本,从第 1 页翻到第 100 页,每一个动作你都心知肚明。你需要知道索引号(Index),你得控制上限。
int[] numbers = { 5, 12, 8, 3, 20 };
for (int i = 0; i < numbers.Length; i++)
{
Console.WriteLine($"我正在检查第 {i} 个工位,发现数字是:{numbers[i]}");
}
这种方式虽然累,但好处是灵活。你想跳过第 3 个工位直接检查第 4 个?for 循环随时待命。
2. 躺平模式:foreach 循环
foreach 循环就像有个兼职的小弟,他不需要懂账本怎么编页码,也不需要知道第几页放什么。你喊一声“把账本里的每一页都念一遍”,他立马就去干活,念完任务结束。
foreach (int num in numbers)
{
Console.WriteLine($"小弟念道:{num}");
}
这种方式写起来爽,只要结果不要过程,省心。但如果你需要修改数组里的值(比如把所有偶数加一),for 循环比小弟好用。
算法听起来挺吓人,其实它就是处理这堆文件的工具。不懂算法的程序员,就像没有地图的司机,永远在原地打转。
3. 找钥匙:线性查找 vs 二分查找
假设你在找一堆钥匙里的“蓝色小钥匙”,但钥匙混得乱七八糟。
- 线性查找:这是最笨也是最稳妥的办法。从第一个开始试,不行下一个,直到找到为止。优点是简单粗暴,缺点是数组越大,找得越慢。
- 二分查找:这就需要你的钥匙已经按颜色排好队了(数组必须有序)。你打开抽屉,看中间,是红的?往左翻;是蓝的?往右翻。这就像开挂,效率极高,哪怕一百万个数据,几步就抓到了。
4. 大扫除:排序算法
把乱七八糟的数据排个序,是程序的日常。
Array.Sort:这是 C# 给的作弊码。只要你不想手写算法,直接调这个,计算机帮你把乱序的数组变整齐。就像双十一那天,快递员瞬间把所有包裹按地址分好了。- 冒泡排序:如果你想学习原理,或者面试被问到“手写排序”,就得自己上。它就像吹泡泡,最大的数字像气泡一样,“咕嘟咕嘟”浮到最上面去。虽然慢,看着解压。
记住,在实际开发里,能用现成库函数(Array.Sort)就别自己造轮子,除非面试官在盯着你。





这一切,似未曾拥有