C#数组参数问题

    class TestArray
    {
        public TestArray()
        { 
            m_bytelist = new List<byte>();
        }
        private List<byte> m_bytelist;
        
        private byte[] getBytes()
        {
            m_bytelist.Add(12);
            m_bytelist.Add(11);
            m_bytelist.Add(10);
            return m_bytelist.ToArray();
        }

        private void setBytes( byte[] buffTemp) 
        {
            Array.Resize(ref buffTemp, 4);
            buffTemp[0] = 0;
            buffTemp[1] = 1;
            buffTemp[2] = 2;
            buffTemp[3] = 3;

            foreach (byte byteTemp in buffTemp)
            {
                Console.WriteLine("setbyte[]:{0}", byteTemp);
            }
        }

        public void println() 
        {
            byte[] buffTemp = getBytes();
            setBytes(buffTemp);
            Array.Resize(ref buffTemp, 2);
            foreach (byte byteTemp in buffTemp) 
            {
                Console.WriteLine("byte[]:{0}", byteTemp);
            }

            foreach (byte byteTemp in m_bytelist)
            {
                Console.WriteLine("list:{0}",byteTemp);
            }
        }
    }

输出:setBytes( byte[] buffTemp)传递数组参数不改变原来数组的值,重新生成一份新的数组。m_bytelist.ToArray()同样生成一份新的数组。

setbyte[]:0
setbyte[]:1
setbyte[]:2
setbyte[]:3
byte[]:12
byte[]:11
list:12
list:11
list:10

延伸:setBytes( ref byte[] buffTemp) 使用引用类型传递的是当前的数组,会改变原本的值。

setbyte[]:0
setbyte[]:1
setbyte[]:2
setbyte[]:3
byte[]:0
byte[]:1
list:12
list:11
list:10
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,281评论 19 139
  • 1. 简介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的...
    笨鸟慢飞阅读 5,867评论 0 4
  • 10#数据类型 合并数组和非合并数组 合并数组:存储方式是连续的,中间没有闲置空间。例如,32bit的寄存器,可以...
    constant007阅读 33,417评论 0 18
  • 日子过得和飞起来一样,一开始只是凭着那一股子热情在坚持,从来没想过自己能不能坚持到底,因为不敢想,怕自己中...
    开心米阅读 3,352评论 5 28
  • 休相知,莫相念, 相见心难平。 往事忆心头,陌路有无期, 深夜风萧萧,临别情已深。 云合明月闭,默然泣无声。 ——致拙
    手握瓷杯阅读 223评论 1 2