数组集合以及foreach循环

4-1 数组的定长性

  • 一个数组在创建后,它的长度固定不变
  • 改变后是新数组,数组适用于数据固定的场景
  • 适用场景:
    • 保存100以内的质数

    • 保存一副扑克牌中所有数据

    • 保存所有已知行星的质量

    • 保存一个星期所有日期
  • 不适用场景
    • 保存一个班学生的信息
    • 保存一年中的所有日期
    • 保存游戏中某玩家的装备信息

 

4-2  交换排序

 

代码如下:

for(int i=0;i<Arr.Length-1;i++)//先写好循环对比的大范围,倒数两位不做对比
{ for(int j=i+1;j<Arr.Length;j++)//这是对比的第二位数,起始位置至少比i大一位
if(Arr[i]>Arr[j])//开始判断,当第一位大于第二位,则交换位置
int temp=Arr[i];
Arr[i]=Arr[j];
Arr[j]=temp;
}

 

4-3 数组和集合

 

  • 数组
    • 定长:用于保存固定数量的数据
    • 占用内存少
    • 遍历速度快
    • 有长度,默认0
  • 集合
    • 不定长
    • 占用内存多
    • 遍历速度慢
    • 无长度

 

  • 初始化对比:
  • int[] numbers={1,2,3,4,5};//长度无法改变,不能添加删除
    List <int> numbers=new List<int>{1,2,3,4,5};//长度可以改变,可以添加删除

 

4-4   foreach循环

  •  作用:只能遍历数组或集合。foreach循环又叫只读循环,在循环体中,不能更改集合或数组
  • 从数组或集合中,一次去处每一项的数据,没去处一次数据,就把数据复制给循环变量,me一次赋值后,运行一次循环体
  • 对比
    • foreach循环
      • 只能用于遍历,不能更改循环目标
      • 遍历速度快,效率高
    • for循环
      • 在循环体中,可以进行任何操作
      • 便利速度慢,执行效率低

语法如下:

foreach(数据类型 变量 in 数组或集合)
{
循环体
}
//头为循环变量,尾为导致变化的内容

foreach(int item in Arr)
{
Console.Write(item);
}

 

posted @ 2017-11-05 16:55  opacity-m  阅读(842)  评论(0编辑  收藏  举报