C# 数组Array
数组是对相同类型的一组数据的封装。数组定义的时候,要说明是对哪一种类型的封装,并且要指定长度。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace TestArrayList
{
class Program
{
static void Main(string[] args)
{
//System.Array
//1、数组[]特定类型、固定长度
string[] str1 = new string[];
str1[] = "a";
str1[] = "b";
str1[] = "c";
Console.WriteLine(str1[]); string[] str2 = new string[] { "a", "b", "c" };
Console.WriteLine(str2[]); string[] str3 = { "a", "b", "c" };
Console.WriteLine(str3[]); //2.二维数组
//int[,] intArray = new int
int[,] intArray = new int[, ];
intArray[, ] = ;
intArray[, ] = ;
intArray[, ] = ;
intArray[, ] = ;
intArray[, ] = ;
intArray[, ] = ;
Console.WriteLine("{0},{1},{2}", intArray[, ], intArray[, ], intArray[, ]);
Console.WriteLine("{0},{1},{2}", intArray[, ], intArray[, ], intArray[, ]); //3多维数组
int[, ,] intArray1 = new int[,,]
{
{{,},{,},{,}},
{{,},{,},{,}},
{{,},{,},{,}}
};
Console.WriteLine("多维数组");
Console.WriteLine("{0},{1},{2},{3},{4},{5}", intArray1[, , ], intArray1[, , ], intArray1[, , ], intArray1[, , ], intArray1[, , ], intArray1[, , ]);
Console.WriteLine("{0},{1},{2},{3}", intArray1[, , ], intArray1[, , ], intArray1[, , ], intArray1[, , ]);
Console.WriteLine("{0},{1},{2},{3},{4},{5}", intArray1[, , ], intArray1[, , ], intArray1[, , ], intArray1[, , ], intArray1[, , ], intArray1[, , ]); //4交错数组即数组的数组
int[][] intArray2 = new int[][];
intArray2[] = new int[] { };
intArray2[] = new int[] { , };
intArray2[] = new int[] { , , };
intArray2[] = new int[] { , , , };
Console.WriteLine("交错数组");
for (int i = ; i < intArray2.Length; i++)
{
for (int j = ; j < intArray2[i].Length; j++)
{
Console.WriteLine("{0}", intArray2[i][j]);
}
}
Console.ReadKey();
int[] myIntArray = new int[] { , , , , };
Object[] myObjArray = new Object[] { , , , , };
Console.WriteLine("Initially,");
Console.Write("integer array:");
PrintValues(myIntArray);
Console.Write("Object array: ");
PrintValues(myObjArray); System.Array.Copy(myIntArray, myObjArray, ); Console.WriteLine("\n After copying the first two elements of the integer array to the Object array.");
Console.Write("integer array:");
PrintValues(myIntArray);
Console.Write("Object array: ");
PrintValues(myObjArray); System.Array.Copy(myObjArray, myObjArray.GetUpperBound() - , myIntArray, myIntArray.GetUpperBound() - , ); Console.WriteLine("\nAfter copying the last two elements of the object array to the integer array,");
Console.Write("integer array:");
PrintValues(myIntArray);
Console.Write("Object array:");
PrintValues(myObjArray);
Console.ReadKey();
} public static void PrintValues(Object[] myArr)
{
foreach (Object i in myArr)
{
Console.Write("\t{0}", i);
}
Console.WriteLine();
} public static void PrintValues(int[] myArr)
{
foreach (int i in myArr)
{
Console.Write("\t{0}", i);
}
Console.WriteLine();
}
}
}
运行结果如下:
数组是一种数据类型,并且二维数组在图像处理中会应用。一维数组的起始下标是[0]。二维数组的起始下标是[0,0]。交错也称参差数组的起始下标是[0][0]。
数组一定是固定长度和类型确定并且有序的,这种呆板的数据类型,导致它的INSERT,非常不方便,于是有了ArrayList
那么C#中数组是引用类型?还是值类型?C#中数组是引用类型,为什么是引用类型,依据是什么?
C# 数组Array的更多相关文章
- Java ArrayList和Vector、LinkedList与ArrayList、数组(Array)和列表集合(ArrayList)的区别
ArrayList和Vector的区别ArrayList与Vector主要从二方面来说. 一.同步性: Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步 ...
- go 数组(array)、切片(slice)、map、结构体(struct)
一 数组(array) go语言中的数组是固定长度的.使用前必须指定数组长度. go语言中数组是值类型.如果将数组赋值给另一个数组或者方法中参数使用都是复制一份,方法中使用可以使用指针传递地址. 声明 ...
- javascript类型系统——数组array
× 目录 [1]创建 [2]本质 [3]稀疏[4]长度[5]遍历[6]类数组 前面的话 除了对象之外,数组Array类型可能是javascript中最常用的类型了.而且,javascript中的数组与 ...
- swift基本用法-数组array
数组简单用法 //------------------------------------------------------------------------------ // 1. 数组定义 / ...
- C#中数组Array、ArrayList、泛型List<T>的比较
在C#中数组Array,ArrayList,泛型List都能够存储一组对象,但是在开发中根本不知道用哪个性能最高,下面我们慢慢分析分析. 一.数组Array 数组是一个存储相同类型元素的固定大小的顺序 ...
- Javascript基础系列之(四)数据类型 (数组 array)
字符串,数值,布尔值都属于离散值(scalar),如果某个变量是离散的,那么任何时候它只有一个值. 如果想使用变量存储一组值,就需要使用数组(array). 数组是由多个名称相同的树值构成的集合,集合 ...
- AS3 - 数组Array的几个常用方法(附样例)
AS3 - 数组Array的几个常用方法(附样例) 2015-03-30 10:39发布:hangge浏览:241 Flex/Flash开发中,经常会使用到数组,下面总结了一些数组的常用方法. 1 ...
- Linux数组array基础
Linux数组array基础[${a[*]}和$a的区别] Bash中,数组变量的赋值有两种方法: (1) name = (value1 ... valuen) 此时下标从0开始 (2) name[i ...
- 学习Swift -- 数组(Array) - 持续更新
集合类型--数组 Array是Swift中的一种集合类型:数组,数组是使用有序列表储存同一类型的多个值,与OC的NSArray的最大不同是,Swift的数组是值类型,OC的数组是引用类型 声明数组的方 ...
- 数据结构之数组Array
数组Array 基本操作 Status InitArray(int dimm,...)//若维数dim和随后的各维长度合法,则构造相应的数组A,并返回OK Status DestroyArray() ...
随机推荐
- Android圆形头像,拍照后“无法加载此图片”的问题解决(适配Android7.0)
Feature: 点击选择拍照或者打开相册,选取图片进行裁剪最后设置为圆形头像. Problem: 拍好照片,点击裁剪,弹Toast"无法加载此图片". Solution: 在裁剪 ...
- Git----GitHub Desktop的入门及使用
1.git和GitHub的区别: 简单回答:球和球场的关系(知乎答案,觉得简单易懂) 详细介绍:git是一个版本控制工具 github是一个用git做版本控制的项目托管平台. 2.安装本地github ...
- 记一次springboot项目,maven引发的悲剧(Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletCont)
maven下载大的项目的时候,jar包下载出错是常见的, 但是这种情况经常能看到,如java.lang.ClassNotFoundException这样的提示, 所以一直以来也觉得maven下载jar ...
- Maven安装教程详解
一.准备工作 1.确定电脑上已经成功安装jdk7.0以上版本 2.win10操作系统 3.maven安装包 下载地 ...
- 微服务架构 - 基于Harbor构建本地镜像仓库
之前写过<搭建docker本地镜像仓库并提供权限校验及UI界面>文章,然后有同仁评论道这样做太复杂了,如果Harbor来搭建会更简单同时功能也更强大.于是抽时间研究了基于Harbor构建本 ...
- 基于 ReactJS 开发简单的可视化业务编辑器 01
线上可以看的,跟github上的代码不一样的:https://whensea.com/wfd/ 程序中经常有一些业务需要定制化,我定制化这些业务的方式主要是基于工作流.配置等方式.由于个人水平限制并不 ...
- 【重学计算机】操作系统D6章:并发程序设计
1. 并发程序的基本概念 程序顺序性 内部顺序性:CPU严格按照顺序执行指令 外部顺序性:程序员设计程序时往往用顺序设计的思想 顺序程序特性 程序执行的顺序性 计算环境的封闭性: 程序执行时犹如独占资 ...
- Java中堆(heap)和栈(stack)的区别
简单的说: Java把内存划分成两种:一种是栈内存,一种是堆内存. 在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配. 当在一段代码块定义一个变量时,Java就在栈中为这个变量分 ...
- Android之友盟多渠道打包与数据统计
文章大纲 一.多渠道打包与数据统计介绍二.友盟实现多渠道打包实战三.友盟数据统计实战四.项目源码下载五.参考文章 一.多渠道打包与数据统计介绍 多渠道打包,相信很多同学都知道.在Android ...
- SQL 高效运行注意事项(二)
SQL Server高效运行总的来说有两种方式: 一. 扩容,提高服务器性能,显著提高CPU.内存,解决磁盘I/O瓶颈.硬件的提升是立竿见影的,而且是风险小,在硬件更新换代非常快的年代, 当SQLSe ...