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年5月16日
  • 51单片机驱动继电器模块点灯

    51单片机驱动继电器模块点灯51单片机驱动继电器模块点灯的使用ESP32与ESP8266简介ESP8266接口视图ESP32功能框图基于arduino的ESP32/ESP8266开发环境搭建基于arduino的ESP32/ESP8266开发环境烧录固件官方FLASH下载软件烧录固件总结

    2022年6月24日
  • Autoencoder自动编码器的发展

    Autoencoder自动编码器的发展Autoencoder自动编码器的发展0、玻尔兹曼机中的测试实验——编码问题(1985)0.1、玻尔兹曼机0.2、受限的玻尔兹曼机0.3、编码问题——自动编码器雏形1、反向传播中的仿真——单层自动编码器(1986)2、利用神经网络进行数据降维——深度自动编码器(2006)3、去噪自编码器(2008)4、稀疏自编码器(2011)5、卷积自编码器(2011)6、变分自编码器(2013)6.1、模型6….

    2022年5月1日
  • git修改提交者用户名和邮箱_163邮箱用户名可以改吗

    git修改提交者用户名和邮箱_163邮箱用户名可以改吗当在GitHub中更改用户名时,git中并没有随之修改,需要自己进行修改,下面给出查看和修改用户名以及邮箱1、查看用户名以及邮箱,使用gitconfig命令gitconfiguser.namegitconfiguser.email2、修改用户名以及邮箱,使用gitconfig命令的–global参数gitconfig–globaluser.name"yourn…

    2022年9月4日
  • Java商城源码最好用的java商城电商系统之一

    Java商城源码最好用的java商城电商系统之一为符合新互联网+时代产品线即时起更新演示网址:2021单店版:http://mall.javaemall.com/index.htm2021多店版:http://www.javaemall.com/index.htm源码包含:PC版网站+手机触屏站+APP客户端(安卓+苹果)+微信版(小程序+公众号)几套区别:2021版升级了移动端新功能和UI页面,更符合扁平简约化潮流,新增微信小程序,底层技术框架升级。多店版就是多店铺多商户,多用户B2B2C功能,能入驻开店。单店版是自营B…

    2022年7月8日
  • AT命令集详解_at命令详解

    AT命令集详解_at命令详解1.AT的历史与应用   1.1AT的历史AT命令集是由拨号调制解调器(MODEM)的发明者贺氏公司(Hayes)为了控制Modem发明的控制协议.AT是Attention的缩写,协议本身采用文本.每个命令均以AT打头,因此得名.这段历史参见http://en.wikipedia.org/wiki/Hayes_command_set 随着网络升级为宽带,速度很低拨号MODEM

    2022年10月25日

发表回复

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

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