`
isiqi
  • 浏览: 16004771 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

.net 基础知识大杂烩(4) ——数组

阅读更多
数组

任务 C# VB
创建一个长度为5的一维数组,使用默认值作为初值 int[] ages = new int[5];
Console.WriteLine(ages.Length); //=> 5
Console.WriteLine(ages.Rank); //=> 1
Console.WriteLine(ages.GetLowerBound(0)); // => 0
Console.WriteLine(ages.GetUpperBound(0)); // => 4
Dim ages(4) As Integer
Console.WriteLine(ages.Length)'=> 5
Console.WriteLine(ages.Rank)'=> 1
Console.WriteLine(ages.GetLowerBound(0))' => 0
Console.WriteLine(ages.GetUpperBound(0))'=> 4
创建一个长度为5的一维数组,指定初始值 int[] ages = new int[5] { 1, 3, 5, 7, 9 }; // OK
int[] ages1 = new int[] { 1, 3, 5, 7, 9 }; // OK
int[] ages2 = new int[6] { 1, 3, 5, 7, 9 }; // 编译错误
Console.WriteLine(ages.Length); //=> 5
Console.WriteLine(ages.Rank); //=> 1
Console.WriteLine(ages.GetLowerBound(0)); // => 0
Console.WriteLine(ages.GetUpperBound(0)); // => 4
Dim ages() As Integer = New Integer(4) {1, 3, 5, 7, 9} ' OK
Dim ages1() As Integer = New Integer() {1, 3, 5, 7, 9} ' OK
Dim ages2() As Integer = New Integer(5) {1, 3, 5, 7, 9} ' 编译错误
Console.WriteLine(ages.Length)'=> 5
Console.WriteLine(ages.Rank)'=> 1
Console.WriteLine(ages.GetLowerBound(0))' => 0
Console.WriteLine(ages.GetUpperBound(0))'=> 4
创建一个2行3列二维数组,使用默认值作为初值 int[,] t = new int[2, 3];
Console.WriteLine(t.Length); //=> 6
Console.WriteLine(t.Rank); //=> 2
Console.WriteLine(t.GetLength(0)); // => 2
Console.WriteLine(t.GetLowerBound(0)); // => 0
Console.WriteLine(t.GetUpperBound(0)); // => 1
Console.WriteLine(t.GetLowerBound(1)); // => 0
Console.WriteLine(t.GetUpperBound(1)); // => 2
Console.WriteLine(t.GetLength(1)); // => 3
Dim t(1, 2) As Integer
Console.WriteLine(t.Length)'=> 6
Console.WriteLine(t.Rank)'=> 2
Console.WriteLine(t.GetLength(0))'=> 2
Console.WriteLine(t.GetLowerBound(0))'=> 0
Console.WriteLine(t.GetUpperBound(0))'=> 1
Console.WriteLine(t.GetLowerBound(1))'=> 0
Console.WriteLine(t.GetUpperBound(1))'=> 2
Console.WriteLine(t.GetLength(1))'=> 3
创建一个2行3列二维数组,指定初始值 int[,] t = new int[2,3] { { 1, 2, 3 },
{ 4, 5, 6 } };
int[,] t1 = new int[,] { { 1, 2, 3 },
{ 4, 5, 6 } };
Console.WriteLine(t.Length); //=> 6
Console.WriteLine(t.Rank); //=> 2
Console.WriteLine(t.GetLength(0)); // => 2
Console.WriteLine(t.GetLowerBound(0)); // => 0
Console.WriteLine(t.GetUpperBound(0)); // => 1
Console.WriteLine(t.GetLowerBound(1)); // => 0
Console.WriteLine(t.GetUpperBound(1)); // => 2
Console.WriteLine(t.GetLength(1)); // => 3
Dim t(,) As Integer = New Integer(1, 2) {{1, 2, 3}, _
{4, 5, 6}}
Dim t1(,) As Integer = New Integer(,) {{1, 2, 3}, _
{4, 5, 6}}
Console.WriteLine(t.Length)'=> 6
Console.WriteLine(t.Rank)'=> 2
Console.WriteLine(t.GetLength(0))'=> 2
Console.WriteLine(t.GetLowerBound(0))'=> 0
Console.WriteLine(t.GetUpperBound(0))'=> 1
Console.WriteLine(t.GetLowerBound(1))'=> 0
Console.WriteLine(t.GetUpperBound(1))'=> 2
Console.WriteLine(t.GetLength(1))'=> 3
创建一个长度为5下标为1的一维数组,使用默认值作为初值 Array t = Array.CreateInstance(typeof(string), new int[] { 5 }, new int[] { 1 });
Console.WriteLine(t.Length); //=> 5
Console.WriteLine(t.Rank); //=> 1
Console.WriteLine(t.GetLength(0)); // => 5
Console.WriteLine(t.GetLowerBound(0)); // => 1
Console.WriteLine(t.GetUpperBound(0)); // => 5
Dim t As Array = Array.CreateInstance(GetType(Integer), New Integer() {5}, New Integer() {1})
Console.WriteLine(t.Length)'=> 5
Console.WriteLine(t.Rank)'=> 1
Console.WriteLine(t.GetLength(0))'=> 5
Console.WriteLine(t.GetLowerBound(0))'=> 1
Console.WriteLine(t.GetUpperBound(0))'=> 5
创建一个2行3列下标为1的二维数组,使用默认值作为初值 int[,] t = (int[,])Array.CreateInstance(typeof(int), new int[] {2,3}, new int[] {1,1});
Console.WriteLine(t.Length); //=> 6
Console.WriteLine(t.Rank); //=> 2
Console.WriteLine(t.GetLength(0)); // => 2
Console.WriteLine(t.GetLowerBound(0)); // => 1
Console.WriteLine(t.GetUpperBound(0)); // => 2
Console.WriteLine(t.GetLowerBound(1)); // => 1
Console.WriteLine(t.GetUpperBound(1)); // => 3
Console.WriteLine(t.GetLength(1)); // => 3
Dim t(,) As Integer = Array.CreateInstance(GetType(Integer), New Integer() {2, 3}, New Integer() {1, 1})
Console.WriteLine(t.Length)'=> 6
Console.WriteLine(t.Rank)'=> 2
Console.WriteLine(t.GetLength(0))'=> 2
Console.WriteLine(t.GetLowerBound(0))'=> 1
Console.WriteLine(t.GetUpperBound(0))'=> 2
Console.WriteLine(t.GetLowerBound(1))'=> 1
Console.WriteLine(t.GetUpperBound(1))'=> 3
Console.WriteLine(t.GetLength(1))'=> 3
改变数组长度 int[] t = new int[2];
Array.Resize(ref t, 3);
Console.WriteLine(t.Length); //=> 3
Console.WriteLine(t.Rank); //=> 1
Console.WriteLine(t.GetLength(0)); // => 3
Console.WriteLine(t.GetLowerBound(0)); // => 0
Console.WriteLine(t.GetUpperBound(0)); // => 2
Dim t(2) As Integer
Array.Resize(t, 3)
Console.WriteLine(t.Length)'=> 3
Console.WriteLine(t.Rank)'=> 1
Console.WriteLine(t.GetLength(0))'=> 3
Console.WriteLine(t.GetLowerBound(0))'=> 0
Console.WriteLine(t.GetUpperBound(0))'=> 2
引用类型数组的强制类型转换 string[] s = new string[3];
object[] os = s;
s = (string[])os;
Dim s(2) As String
Dim os() As Object = s
s = os
值类型数组的强制类型转换(VS2005) int[] a = new int[2];
decimal[] da1 = a; // 编译错误
decimal[] da2 = (int[])a; // 编译错误
decimal[] da = Array.ConvertAll(a,
new Converter(
delegate(int old)
{
return old;
})); // OK
Dim a(2) As Integer
Dim da() As Decimal = Array.ConvertAll(a, _
New Converter(Of Integer, Decimal)(AddressOf ConvertInt))

Function ConvertInt(ByVal old As Integer) As Decimal
Return old
End Function
值类型数组的强制类型转换(VS2008) int[] a = new int[2];
decimal[] da = Array.ConvertAll(a,
new Converter(old => old));
Dim a(2) As Integer
Dim da() As Decimal = Array.ConvertAll(Of Integer, Decimal)(a, _
New Converter(Of Integer, Decimal)(Function(old) old))
创建一个交错数组(即数组的数组) int[][] a = new int[2][];
Console.WriteLine(a[0] == null); //=> True
Dim a(2)() As Integer
Console.WriteLine(a(0) Is Nothing) '=> True
创建一个交错数组,并初始化(例1) int[][] a = new int[2][] { new int[2], new int[3] };
Console.WriteLine(a[0].Length); //=> 2
Console.WriteLine(a[1].Length); //=> 3
Dim m(1) As Integer
Dim n(2) As Integer
Dim a()() As Integer = New Integer(1)() {m, n}
Console.WriteLine(a(0).Length) '=> 2
Console.WriteLine(a(1).Length) '=> 3
创建一个交错数组,并初始化(例2) int[][] a = new int[2][] { new int[2] { 1, 2 },
new int[3] { 11, 22, 33 } };
Console.WriteLine(a[0][0]); //=> 1
Console.WriteLine(a[1][2]); //=> 33
Dim m() As Integer = New Integer(1) {1, 2}
Dim n() As Integer = New Integer(2) {11, 22, 33}
Dim a()() As Integer = New Integer(1)() {m, n}
Console.WriteLine(a(0)(0)) '=> 1
Console.WriteLine(a(1)(2)) '=> 33

http://www.cnblogs.com/1-2-3/archive/2008/03/15/net-basic-knowledge-3-cs-vb-array.html
分享到:
评论

相关推荐

    GenomeDotNet:.NET项目的大杂烩,可用于处理23andme数据

    .NET项目的大杂烩,可用于处理23andme数据 ISOGG 2015 Y-DNA单倍体树 在互联网上寻找易于解析的ISOGG 2015 Y-DNA Haplogroup树的版本,我倒霉了。 因此,我决定刮除ISOGG的页面并将数据投影到易于使用的JSON文件中。...

    基础传统神经网络算法大杂烩.zip

    基础传统神经网络算法大杂烩基础传统神经网络算法大杂烩 基础传统神经网络算法大杂烩基础传统神经网络算法大杂烩 基础传统神经网络算法大杂烩基础传统神经网络算法大杂烩 基础传统神经网络算法大杂烩基础传统神经...

    亮剑.NET:.NET深入体验与实战精要清晰版及源码

     第3章 asp.net开发大杂烩  3.1 页面生命周期  3.2 页面状态管理  ……  第4章 windows窗体编程你也行  第5章 数据库开发  第6章 关于xml  第7章 web service开发详解  第8章 用户体验的杀手锏——...

    亮剑.NET深入体验与实战精要2

    第3章 ASP.NET开发大杂烩 113 3.1 页面生命周期 114 3.1.1 独立页面生命周期事件顺序 114 3.1.2 具有Master页的生命周期事件顺序 116 3.1.3 ASP.NET生命周期详解 118 3.2 页面状态管理 120 3.2.1 Cookie 121 3.2.2...

    亮剑.NET深入体验与实战精要.part2

     第3章 asp.net开发大杂烩  3.1 页面生命周期  3.2 页面状态管理  ……  第4章 windows窗体编程你也行  第5章 数据库开发  第6章 关于xml  第7章 web service开发详解  第8章 用户体验的杀手锏——...

    亮剑.NET深入体验与实战精要3

    第3章 ASP.NET开发大杂烩 113 3.1 页面生命周期 114 3.1.1 独立页面生命周期事件顺序 114 3.1.2 具有Master页的生命周期事件顺序 116 3.1.3 ASP.NET生命周期详解 118 3.2 页面状态管理 120 3.2.1 Cookie 121 3.2.2...

    C++基础入门教程(一):基础知识大杂烩

    主要介绍了C++基础入门教程(一):基础知识大杂烩,本文讲解了注释、头文件、命名空间等内容,需要的朋友可以参考下

    亮剑.NET深入体验与实战精要.part4(完)

     第3章 asp.net开发大杂烩  3.1 页面生命周期  3.2 页面状态管理  ……  第4章 windows窗体编程你也行  第5章 数据库开发  第6章 关于xml  第7章 web service开发详解  第8章 用户体验的杀手锏——...

    各种工具大杂烩

    各种工具大杂烩

    亮剑.NET深入体验与实战精要.part3

     第3章 asp.net开发大杂烩  3.1 页面生命周期  3.2 页面状态管理  ……  第4章 windows窗体编程你也行  第5章 数据库开发  第6章 关于xml  第7章 web service开发详解  第8章 用户体验的杀手锏——...

    新能源汽车知识点大杂烩.pdf

    新能源汽车知识点大杂烩.pdf新能源汽车知识点大杂烩.pdf

    专业方面的资源 网址大杂烩

    软件工具的安装,java、.net、其他学习资料方面的知识等等,只要是你能想到的我这里面都是存在的!

    亮剑.NET深入体验与实战精要.part1.

     第3章 asp.net开发大杂烩  3.1 页面生命周期  3.2 页面状态管理  ……  第4章 windows窗体编程你也行  第5章 数据库开发  第6章 关于xml  第7章 web service开发详解  第8章 用户体验的杀手锏——...

    Elasticsearch的大杂烩分享_赖鸿智.pdf

    Elasticsearch的大杂烩分享_赖鸿智.pdf

    (大杂烩)proteus仿真MCS51一百例.rar

    (大杂烩)proteus仿真MCS51一百例.rar(大杂烩)proteus仿真MCS51一百例.rar(大杂烩)proteus仿真MCS51一百例.rar(大杂烩)proteus仿真MCS51一百例.rar(大杂烩)proteus仿真MCS51一百例.rar(大杂烩)proteus仿真MCS51一百例...

    数通必会知识点大杂烩.doc

    数通必会知识点大杂烩.doc

    网络安全大杂烩

    罗列了一些网络安全方面的知识,简单介绍了安全测试的知识。

    大杂烩proteus仿真MCS51一百例

    大杂烩proteus仿真MCS51一百例; 有100个例题学习1!

    proteus大杂烩

    proteus大杂烩 proteus大杂烩 proteus大杂烩 proteus大杂烩 proteus大杂烩 proteus大杂烩 proteus大杂烩 proteus大杂烩 proteus大杂烩 proteus大杂烩 proteus大杂烩

Global site tag (gtag.js) - Google Analytics