突然接触到,所以就写一下共享。

首先说明一下,数组是引用类型的,所以注意不要在复制时复制了地址而没有复制数值!

事实上在复制数组的时候。一定要用new在堆中开辟一块新的空间专门用于存放数组。这样才是有效的。

(1)

int[] pins = { 9, 3, 7, 2 };

int[] copy=new int[pins.length];

for (int i
= 0; i < copy.length; i++)

{

copy[i]
= pins[i];

}

(2)

int[]
copy = new int[pins.Length];

pins.CopyTo(copy, 0);

(3)

Int[] pins= new int[4]{9,3,7,2};

Int[] alias=pins;

注意这样的复制仅仅是一种引用而已。仅仅是把数据的地址传递给了alias数组,所以不太推荐这样的方式来复制数组;

(4)

Array.Copy(pins,copy,copy.Length)

(5)

Int[] copy=(int[])pins.Clone();

这里说明一下为什么要用到int[]的强制类型转换。原因就在于Clone的结果类型是object的,所以须要强制转换为int[]

Object类事实上就是我们全部类的基类。

欢迎交流 http://blog.csdn.net/ycwol/article/details/40151575

版权声明:本文博主原创文章。博客,未经同意不得转载。

C# 几种方法来复制的阵列的更多相关文章

  1. js刷新页面有哪几种方法

    js刷新页面有哪几种方法 一.总结 一句话总结:location属性的reload方法即可:document.location.reload() 1.页面刷新有哪常见的8种方法? 1,history. ...

  2. C++标准程序库的输入输出流(I/O Stream)复制文件(4种方法)

    使用C++标准程序库的输入输出流(I/O   Stream)复制文件,存在许多的方法, 方法一:逐个字符复制#include   <   fstream   > std::ifstream ...

  3. ubuntu在终端下复制粘贴的2种方法

    最近因为项目需要在ubuntu环境下开发(我是用的unbantu虚拟环境),经常要在终端下手动输入很长的文件路径,觉得很麻烦,就谷歌了2种方法如下 你可能会问,什么是ubuntu? 简单来说就是一个基 ...

  4. mysql 复制表数据,表结构的3种方法

    什么时候我们会用到复制表?例如:我现在对一张表进行操作,但是怕误删数据,所以在同一个数据库中建一个表结构一样,表数据也一样的表,以作备份.如果用mysqldump比较麻烦,备份.MYD,.MYI这样的 ...

  5. JavaScript 复制变量的三种方法

    参考:Copying Objects in JavaScript - Orinami Olatunji(@orinamio_) October 23, 2017    直接将一个变量赋给另一个变量时, ...

  6. OC动态创建的问题变量数组.有数组,在阵列13要素,第一个数据包阵列,每3元素为一组,分成若干组,这些数据包的统一管理。最后,一个数组.(要动态地创建一个数组).两种方法

    <span style="font-size:24px;">//////第一种方法 //        NSMutableArray *arr = [NSMutable ...

  7. 比较C#中几种常见的复制字节数组方法的效率

    在日常编程过程中,我们可能经常需要Copy各种数组,一般来说有以下几种常见的方法:Array.Copy,IList<T>.Copy,BinaryReader.ReadBytes,Buffe ...

  8. python excel操作单元格复制和读取的两种方法

    操作单元格 新建一个sheet, 单元格赋值(两种方法) 单元格A1赋值为’xiaxiaoxu’ 单元格A2赋值为‘xufengchai’ 打印A1和A2单元格的值(两种方法) #coding=utf ...

  9. 比较C#中几种常见的复制字节数组方法的效率[转]

    [原文链接] 在日常编程过程中,我们可能经常需要Copy各种数组,一般来说有以下几种常见的方法:Array.Copy,IList<T>.Copy,BinaryReader.ReadByte ...

随机推荐

  1. WPF 设置WebBrowser控件不弹脚本错误提示框

    using System.Reflection; using System.Windows; using System.Windows.Controls; using System.Windows.N ...

  2. nodejs启动守护程序pm2

    nodejs启动守护程序pm2 by 伍雪颖 做了个应用,server放阿里云,只是server总会自己断,后来写了个心跳程序,就是检測应用线程是否还在,不在就再启动, 这种方法好笨重啊,后来发现no ...

  3. XMPP协议简介

    XMPP(息处理现场协议)是基于可扩展标记语言(XML)的协议.它用于即时消息(IM)以及在线现场探測.XMPP协议採用的是client-server架构,全部从一个client发到还有一个clien ...

  4. 智能手机的工业控制应用方案——SimpleWiFi在工业控制领域应用

    智能手机的工业控制应用方案——SimpleWiFi在工业控制领域应用    先上图: 现在的智能控制都是基于微控制器,随着智能的手持终端的普及,基于智能终端的控制就会越来越普遍. WIFI便是其中的一 ...

  5. hdu 2451 Simple Addition Expression(数位DP )成败在于细节

    亚洲区域赛的题,简单的数位DP题,注重细节. 任何细节都有可能导致wa,所以没有绝对的水题. 把握好细节,此题便A. #include<stdio.h> __int64 getans(__ ...

  6. Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案

    原文:Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案 如果你是用Visual Studio自带的打包项目打包了一个I ...

  7. hdu1025(nlon(n)最长上升子序列)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1025 大致思路:设置两个a,b数组,a数组存储数据,b数组存储最长不降序序列.此算法关键在于设计二分查 ...

  8. poj3126(bfs)

    题目链接:http://poj.org/problem?id=3126 题意:给两个四位数n,m,将n变成m需要多少步,要求每次只能改变n的某一位数,即改变后的数与改变前的数只有一位不同,且每次改变后 ...

  9. [置顶] Firefox OS 学习——manifest.webapp结构分析

    在Firefox OS 学习——Gaia 编译分析  这篇文章多次提到manifest.webapp文件,对于做过android app 开发的人来说,都很熟悉Android.mk 和Manifest ...

  10. J2EE互联网产品打造

    CSDN的各位技术朋友们,你们好: 我司最近正在研发一套J2EE的互联网产品,前期功能设计例如以下: 1.权限管理 2.菜单管理 3.系统设置 4.页面管理[主要做静态化] 5.任务管理[数据同步以及 ...