1、集合
//数组:存值长度固定,类型固定
//集合:长度不固定,类型不固定
List<int> list = new List<int>();
//我们可以通过Add或者AddRange方法向集合中添加值,但是,如果我们需要添加十个数的时候,用这个就不好了
//list.Add(78);
//int[] nums = { 1,2,3,4};
//list.AddRange(nums);
//所以,针对上面出现的问题,我们通过循环向集合中添加数据
for (int i = 1; i < 10; i++)
{
list.Add(i);
}
list.Insert(2, 100); //向索引是2的位置插入100
for (int i = 0; i < list.Count; i++)
{
Console.WriteLine(list[i]);
}
//list.RemoveAt(2);根据索引来移除
list.ToArray();//把集合转成数组
Console.WriteLine("===========");
Console.ReadKey();
//list.Contains(3);判断集合中是否包含该元素
// list.Count();集合的个数
2、集合案例
#region 练习一 两个(list)集合{"a","b","c","d","e"}和{"d","e","g","w",},把这两个集合去除重复项合并成一个
List<string> listOne = new List<string>() { "a", "b", "c", "d", "e" };
List<string> listTwo = new List<string>() { "d", "e", "g", "w", };
//循环第二个集合
for (int i = 0; i < listTwo.Count; i++)
{
//判断第一个集合中是否包含第二个集合中的数据
if (!listOne.Contains(listTwo[i])) //如果第一个集合中不包含第二个集合中的元素
{
//将第二个元素中的元素添加到第一个元素中
listOne.Add(listTwo[i]);
}
}
//将第一个集合通过循环输出
for (int i = 0; i < listOne.Count; i++)
{
Console.WriteLine(listOne[i]);
}
Console.ReadKey();
#endregion
#region 练习二 随机生成10个1-100之间的数放到List中,要求这10个数不能重复,并且都是偶数(添加10次,可能循环很多次)
//先定义一个集合
List<int> list = new List<int>();
Random r = new Random();
//不停地产生随机数
while (list.Count<10)
{
int num = r.Next(0,100);
//判断这100个数不能重复,并且是偶数
if (!list.Contains(num)&&num%2==0)
{
//将得到的数添加到集合中
list.Add(num);
}
}
//通过循环将集合中的数据打印出来
for (int i = 0; i < list.Count; i++)
{
Console.WriteLine(list[i]);
}
Console.ReadKey();
#endregion
3、分拣奇偶数
#region 把分拣奇偶数的程序用泛型实现。
List<int> list = new List<int>() { 2, 23, 6, 45, 89, 85, 67, 563 };
//定义一个集合,来存放偶数
List<int> listEven = new List<int>();
//定义一个集合,来存放奇数
List<int> listOdd = new List<int>();
//循环集合
for (int i = 0; i < list.Count; i++)
{
//判断是否是偶数
if (list[i] % 2 == 0)
{
//添加到偶数集合中
listEven.Add(list[i]);
}
else
{
//添加到奇数集合中
listOdd.Add(list[i]);
}
}
//循环将偶数打印输出
for (int i = 0; i < listEven.Count; i++)
{
Console.WriteLine(listEven[i]);
}
Console.WriteLine("============");
//循环将奇数打印输出
for (int i = 0; i < listOdd.Count; i++)
{
Console.WriteLine(listOdd[i]);
}
Console.ReadKey();
#endregion
4、键值对练习
#region 键值对练习四
Dictionary<string, int> dic = new Dictionary<string, int>();
//向字典中添加元素
dic.Add("卡卡西",30);
dic.Add("梅西",24);
dic.Add("郑大世",34);
//先将键打印出来
Console.WriteLine("================键=============");
foreach (string item in dic.Keys)
{
Console.WriteLine(item);
}
//将值打印出来
Console.WriteLine("================值==============");
foreach (int item in dic.Values)
{
Console.WriteLine(item);
}
Console.WriteLine("==========键值对========");
foreach (KeyValuePair<string,int> item in dic)
{
Console.WriteLine(item.Key+"=========="+item.Value);
}
Console.ReadKey();
#endregion
原文:http://blog.csdn.net/qizhichao110/article/details/44523995