using System;
using System.Collections;
using System.Collections.Generic;
namespace ConsoleApp17
{
class Program
{
static void Main(string[] args)
{
#region 非泛型集合,长度可变。可以存多个类型的元素
//1.创建ArrayList的集合
ArrayList arrayList = new ArrayList();
//添加元素
arrayList.Add(1323);//第一种方式,添加一个元素
Console.WriteLine(arrayList[0]);
//2.添加元素
arrayList.AddRange(new ArrayList() {666,"我是字符串" });//第二种方法,添加多个元素
Console.WriteLine(arrayList[1]);
Console.WriteLine(arrayList[2]);
arrayList.Insert(3,"哈喽");//第三种方式,通过索引添加一个元素
Console.WriteLine(arrayList[3]);
//4.调用遍历的方法
ForArry(arrayList);
//5.删除元素
arrayList.Remove(1323);//第一种方法,删除指定值的元素
ForArry(arrayList);
arrayList.Remove(2);//第二种方法,通过索引删除元素
ForArry(arrayList);
arrayList.Remove(1323);//第三种方法,删除清空整个集合
ForArry(arrayList);
//6.修改元素
ArrayList arrayList1 = new ArrayList() {"张三","李四","菠萝吹雪" };
Console.WriteLine("\n这是修改之前的集合");
ForArry(arrayList1);
arrayList1[0] = 1;
arrayList1[1] = 2;
arrayList1[2] = 3;
Console.WriteLine("\n这是修改之后的集合");
ForArry(arrayList1);
//7.查找元素
ArrayList arrayList2 = new ArrayList() { "张三", "李四", "王五", "张三", "嘿七" };
int index = arrayList2.IndexOf("李四");
Console.WriteLine("\n这是IndexOf的查找结果");
arrayList2.Insert(index, "莉莉");//吧查找到的李四换个名字
ForArry(arrayList2);
int index1 = arrayList2.IndexOf("张三");//返回第一个匹配项的索引
Console.WriteLine("\n这是IndexOf的查找张三结果" + index1);
int index2 = arrayList2.LastIndexOf("张三");//返回最后一个匹配项的索引
Console.WriteLine("\n这是IndexOf的查找张三结果" + index2);
//判断是否有值
bool reuslt = arrayList2.Contains("张三");
if (reuslt==true)
{
Console.WriteLine("\n集合里面有这个人");
}
else
{
Console.WriteLine("\n集合里面没有这个人");
}
//8.排序
ArrayList arrayList3 = new ArrayList() { 1, 3, 2, 9, 7, 6 };
arrayList3.Sort();//吧集合的数据从小到大排序
ForArry(arrayList3);
//9.新的遍历方式
Console.WriteLine("\n这是ArrayList新的遍历");
int i = 0;
foreach(object item in arrayList2)
{
i++;
Console.WriteLine("这是第" + i + "个元素" + item);
}
#endregion
#region 泛型集合,存储固定数据类型的元素
//List<T>
//1.创建List集合
List<string> list = new List<string>();
//2.添加元素
list.Add("张三");//添加第一个元素
list.AddRange(new List<string>() { "李四","王五"});//添加一个集合
list.Insert(3, "赵六");//根据索引添加一个元素
//调用遍历方法
ForList(list);
//3.删除元素
list.Remove("赵六");//删除指定数据元素
ForList(list);
list.RemoveAt(0);//删除指定索引位置的数据元素
ForList(list);
list.Clear();//删除全部
ForList(list);
//4.修改元素
List<string> list1 = new List<string>() {"大哥一","大哥二","大哥三" };
Console.WriteLine("\n这是List修改前的集合");
ForList(list1);
list1[0] = "小弟1";//从索引位置进行修改
list1[1] = "小弟2";
ForList(list1);
//Dictionary<TKey,TValue>集合
//创建
Dictionary<string, string> dic = new Dictionary<string, string>();
//添加元素
dic.Add("姓名", "肛门崔雪");
dic.Add("姓别", "女");
dic.Add("id", "530041");
//调用方法
ForDic(dic);
//删除
dic.Remove("性别");
dic.Clear();//删除全部
//修改
Dictionary<string, string> dic1 = new Dictionary<string, string>();
dic1.Add("姓名", "肛门崔雪");
dic1.Add("姓别", "女");
dic1.Add("id", "530041");
dic1["姓名"] = "name";
dic1["姓别"] = "未知";
ForDic(dic1);
#endregion
Console.ReadKey();
}
//创建一个遍历方法
static void ForArry(ArrayList arr)
{
Console.WriteLine("\n这是ArrayList的遍历");//\n是简写换行符
for ( int i = 0;i< arr.Count; i++)
{
Console.WriteLine("这是集合的第"+(i+1)+"个元素"+arr[i]);
}
try
{
if (arr.Count == 0)
{
throw new Exception("这个集合是空的");
}
}
catch(Exception ex)
{
Console.WriteLine(ex);
}
}
//list遍历方法
static void ForList(List<string> list)
{
Console.WriteLine("\n这是List的遍历");
int i = 0;
foreach(string item in list)
{
i++;
Console.WriteLine("这是List集合的第" + i + "个元素:" + item);
}
}
//Dictionary<TKey,TValue>遍历方法"
static void ForDic(Dictionary<string,string>dic)
{
Console.WriteLine("\n这是Dictionary<TKey,TValue>遍历");
foreach(string key in dic.Keys)
{
Console.WriteLine(key + ":" + dic[key]);
}
}
}
}
泛集合与非泛集合
最新推荐文章于 2024-07-13 13:09:17 发布