动态数组的问题
怎么实现vb中的redim preserve
改变数组的维数,以前数组中的值还存在!
问题点数:20、回复次数:8Top
1 楼egxsun(egxsun)回复于 2005-01-23 14:11:20 得分 0
动态数组只能用arraylist等Top
2 楼xyxy617(年糕)回复于 2005-01-23 14:21:21 得分 0
二维的可以吗?Top
3 楼xyxy617(年糕)回复于 2005-01-23 14:41:35 得分 0
upTop
4 楼xyxy617(年糕)回复于 2005-01-23 14:41:41 得分 0
upTop
5 楼zhzuo(秋枫)回复于 2005-01-23 22:50:36 得分 20
using System;
public class SamplesArray {
public static void Main() {
// Creates and initializes a three-dimensional Array of type Object.
Array my3DArray=Array.CreateInstance( typeof(Object), 2, 3, 4 );
for ( int i = my3DArray.GetLowerBound(0); i <= my3DArray.GetUpperBound(0); i++ )
for ( int j = my3DArray.GetLowerBound(1); j <= my3DArray.GetUpperBound(1); j++ )
for ( int k = my3DArray.GetLowerBound(2); k <= my3DArray.GetUpperBound(2); k++ )
my3DArray.SetValue( "abc" + i + j + k, i, j, k );
// Displays the values of the Array.
Console.WriteLine( "The three-dimensional Array contains the following values:" );
PrintValues( my3DArray );
}
public static void PrintValues( Array myArr ) {
System.Collections.IEnumerator myEnumerator = myArr.GetEnumerator();
int i = 0;
int cols = myArr.GetLength( myArr.Rank - 1 );
while ( myEnumerator.MoveNext() ) {
if ( i < cols ) {
i++;
} else {
Console.WriteLine();
i = 1;
}
Console.Write( "\t{0}", myEnumerator.Current );
}
Console.WriteLine();
}
}
/*
This code produces the following output.
The three-dimensional Array contains the following values:
abc000 abc001 abc002 abc003
abc010 abc011 abc012 abc013
abc020 abc021 abc022 abc023
abc100 abc101 abc102 abc103
abc110 abc111 abc112 abc113
abc120 abc121 abc122 abc123
*/
Top
6 楼aijing(我也可以的!)回复于 2005-01-23 23:14:40 得分 0
upTop
7 楼aijing(我也可以的!)回复于 2005-01-23 23:21:53 得分 0
新建一数组,把现数组的数据拷过去,用新数组代替现数组Top
8 楼daview(Daview)回复于 2005-01-23 23:26:28 得分 0
新建一个要扩充大小的数组,然后把现有的数组与新数组连接起来。Top




