前言:数组和集合可以将多个同类型的数据存放在一起,大大的简化了程序的开发过程,经过一周的学习,现对数组和集合进行归纳如下:
1.数组和集合对比分析:
类别: 数组 集合
长度: 定长 不定长
内存: 占用内存少 占用
相互转换 数组一定能够转化为集合,反之则不一定能够实现
声明: 数据类型[] 变量名 List<数据类型>变量名;
赋值: 变量名=new数据类型
[长度]; 变量名=new List<数据类型>()
读取: 变量名.Lenght; 变量名. Count;
修改: 变量名[索引]=值; 变量名[索引]=值;
初始化器: new 数据类型 [] {数据值.....} 变量名=new List<数据类型>(){数据值};
添加元素:
由于数组定长,固不能改变原数组长度 变量名.Add(要添加的数据);
插入元素: 变量名.Insert(索引,新数据)
删除元素: 变量名.RemoveAt(索引);
变量名.Remove(数据);
2.数组:
例子:建立一个int类型的数组,变量名为nums,并使用初始化器给它的每一项赋值(随意赋一些值即可),让用户输入一个下标和一个新的数字,修改数组对应下标的数字,若下标超出范围,要给出错误提示,并让用户重新输入,输出数组中最大的数
int [] nums=new int[5]{5,8,10,6,7}
Console.Write(“请输入一个下标”)
int index=int.Parse(Console.ReadLine());
while (index < 0 || index > maxIndex)
{
Console.Write("输入有误,请重新输入:");
index = int.Parse(Console.ReadLine());
}
Console.Write("请输入新的数字:");
int newNumber = int.Parse(Console.ReadLine());
nums[index] = newNumber;
Console.WriteLine;
int max = nums[0];
for (int i = 1; i < nums.Length; i++)
{
if (nums[i] > max)
{
max = nums[i];// 把这个更大的数保存到max中
}
}
Console.WriteLine("最大数为:" + max);
3.集合:
例子:使用集合初始化器,初始化一个int类型的集合,然后删除该集合的第一项,将一个数字2加入到集合的第一项;依次提示用户输入3个数,然后将这3个数依次装到集合中,最后,输出该集合的内容
List<int> nums = new List<int>() { 3, 6, 8, 2, 1 };
nums.RemoveAt(0);
nums.Insert(0, 2);
List<int> nums = new List<int>();
Console.Write("请输入第1个数:");
nums.Add(int.Parse(Console.ReadLine()));
Console.Write("请输入第2个数:");
nums.Add(int.Parse(Console.ReadLine()));
Console.Write("请输入第3个数:");
nums.Add(int.Parse(Console.ReadLine()));
for (int i = 0; i < nums.Count; i++)
{
Console.Write(nums[i] + " ");
}