c#数组与集合_将数组a和数组b合并为数组c

c#数组与集合_将数组a和数组b合并为数组cc#数组与集合

大家好,又见面了,我是你们的朋友全栈君。

数组在内存中是连续存储的,所以索引速度很快,增删改元素也很简单。但是数组是分配在一块连续的数据空间上的,因此分配空间的同时就必须确定好空间的大小,空间的连续也导致增删改及存储元素的效率很低。如在数组中添加元素,就需在内存空间中“腾出”一块地方,别的元素再往后“cuan”位置。还有在声明数组时,必须指定数组长度,长也不好短也不行,怎么办?于是集合出现了。

ArrayList示例:

static void Main(string[] args)
        {
            ArrayList list = new ArrayList();
            list.Add(true);
            list.Add(1);
            list.Add("张三");
            list.AddRange(new int[] { 1, 2, 3, 4, 5, 6, 7, 8 });
            list.AddRange(list);
            //list.Clear();//清除
            //list.Reverse();//反转
            //list.InsertRange(0, new string[] {"李四"});//指定位置插入集合
            if (list.Contains("张三"))//判断包含指定元素
            {
                Console.WriteLine("已经有这个屌丝啦~");
            }
            for (int i = 0; i < list.Count; i++)
            {
                Console.WriteLine(list[i]);
            }
            Console.ReadKey();
        }

List<>示例:

static void Main(string[] args)
        {
            List<int> lt = new List<int>();
            lt.Add(1);
            lt.Add(2);
            lt.Add(3);
            lt.AddRange(new int[] { 4, 5, 6, 7, 8, 9 });
            for (int i = 0; i < lt.Count; i++)
            {
                Console.WriteLine(lt[i]);
            }
            Console.ReadKey();
        }

Hashtable示例:

static void Main(string[] args)
        {
            Hashtable hash = new Hashtable();
            hash.Add(1, "张三");
            hash.Add(2, true);
            hash.Add(false, "错误的~");
            foreach (var h in hash.Keys)
            {
                Console.WriteLine("键是{0},值是{1}", h, hash[h]);
            }
            Console.ReadKey();
        }

Dictionary示例:

 static void Main(string[] args)
        {
            Dictionary<int, string> dir = new Dictionary<int, string>();
            dir.Add(1, "张三");
            dir.Add(2, "李四");
            dir[1] = "干掉你";
            foreach (KeyValuePair<int, string> kv in dir)
            {
                Console.WriteLine("键是{0},值是{1}", kv.Key, kv.Value);
            }
            Console.ReadKey();
        }

小结:

ArrayList集合对数据类型没有要求,是因为ArrayList集合中存储的数据类型默为object类型,其它类型与object类型进行转换时就会发生“拆箱装箱”操作,而List集合在声明集合时就确定了数据类型,所以List集合与ArrayList集合相比是相对安全的哦。键值对集合与字典集合同理。

转载于:https://www.cnblogs.com/huangxuQaQ/p/10732121.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106872.html原文链接:https://javaforall.net

(0)
上一篇 2022年4月21日 下午11:20
下一篇 2022年4月21日 下午11:20


相关推荐

  • web默认端口号是多少_web网站的默认端口为

    web默认端口号是多少_web网站的默认端口为代理服务器常用端口计算机端口号范围1~65535,端口不能重复HTTP协议代理服务器常用端口号:80/8080/3128/8081/9080SOCKS代理协议服务器常用端口号:1080FTP(文件传输)协议代理服务器常用端口号:21Telnet(远程登录)协议代理服务器常用端口:23常用端口说明端口:21服务:FTP说明:FTP服务器所开放的端口,用于上传、下载。…

    2026年1月14日
    7
  • nginx反向代理服务器

    nginx反向代理服务器什么是反向代理 nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp 通常的代理服务器 只用于代理内部网络对 Internet 的连接请求 客户机必须指定代理服务器 并将本来要直接发送到 Web 服务器上的 http 请求发送到代理服务器中由代理服务器向 Internet 上的 web 服务器发起请求 最终达到客户机上网的目的 nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp 而反向代理 ReverseProxy 方式是指以代理服务器来接受 internet 上的连接请求 然后将

    2026年3月26日
    2
  • java实现将图片读取成base64字符串,将base64字符串存储为图片。

    java实现将图片读取成base64字符串,将base64字符串存储为图片。全栈工程师开发手册(作者:栾鹏)java教程全解java实现将图片读取成base64字符串,将base64字符串存储为图片。将图片转化为字符串以后,由于字符串更方便在网络上通过ajax传输、在网络web前台和后台间进行传输。importsun.misc.BASE64Decoder;importsun.misc.BASE64Encoder;图片转化成base64字符串

    2025年8月2日
    4
  • android定时器开发[通俗易懂]

    android定时器开发[通俗易懂]在android中,经常用到的定时器主要有以下几种实现:一、采用Handler与线程的sleep(long)方法二、采用Handler的postDelayed(Runnable,long)方法三、采用Handler与timer及TimerTask结合的方法。下面逐一介绍:一、采用Handle与线程的sleep(long)方法Handler主要用来处理接受到的消息。这只是最主要的方法,当…

    2022年7月25日
    12
  • css 居中几种方法

    css 居中几种方法记录下好文 https www w3cplus com css elements horizontally center with css html

    2026年3月18日
    2
  • java getclassloader_Java Class getClassLoader()方法[通俗易懂]

    java getclassloader_Java Class getClassLoader()方法[通俗易懂]JavaClassgetClassLoader()方法java.lang.Class.getClassLoader()方法返回的类加载器的类。一些实现可能使用null表示引导类加载器。如果这个类是由引导类加载器加载的方法在这样的实现将返回null。1语法publicClassLoadergetClassLoader()2参数无3返回值此方法返回加载此对象所表示的类或接口的类加载器。…

    2022年6月11日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号