ArrayList m = ArrayList.Repeat(arr,arr.Count);
======
1。
我想问下 LZ ,你这里 repeat 的什么啊? 
是 Repeat 了 arr.Count 个 arr (ArrayList) 对象2。
自己应该看清除 ArrayList.Repeat 方法原型的说明上面的是你在我的上个帖子中的回复内容,小弟有以下疑问想请教您如下:
这个是msdn上的Repeat的定义如下:
 ArrayList ArrayList.Repeat(object Value,int coutn);
想请问一下好多方法参数中都有object Value作为对数,想请问一下
object value,到底表示什么呢?是对象的实例吗?

解决方案 »

  1.   

    1.
    首先,我们看下MSDN 对此静态方法的说明:
    ***********************************************
    返回 ArrayList,它的元素是指定值的副本。 命名空间:System.Collections
    程序集:mscorlib(在 mscorlib.dll 中)语法 
    C# 
    public static ArrayList Repeat (
    Object value,
    int count
    )参数
    value
    要在新 ArrayList 中对其进行多次复制的 Object。该值可以为 空引用(在 Visual Basic 中为 Nothing)。 count
    value 应被复制的次数。 返回值
    具有 count 所指定的元素数的 ArrayList,其中的所有元素都是 value 的副本。
    *********************************************************2.
    想请问一下好多方法参数中都有object Value作为对数,想请问一下
    object value,到底表示什么呢?是对象的实例吗?
    ============================================
      a. .net 中所有对象的最终基类均为 Object (小写 object 是Object 在 C+++++ 中的别名)
      b. C# 中最常见的类型 int, double, float 等等也是对象,(我们叫他们为基于类型 primary type),对应到 。net中的对象分别是 System.Int32, System.Double, System.Single,
    他们的最终基类也是object,但是他们比较特别,我们叫他们为值类型。
      c. 与值类型对应的就是引用类型,如 String, ArrayList, Array,DataGrid, GridView等等
      d. 值类型与引用类型的区别请 baidu + google
      e. 因此,假如你已经理解了继承,那么就知道.net中任何对象都可以转换为 Object 类型(对于值类型,别人会再告诉你另一个关键词“装箱”与“拆箱”)
      f. 这里 “object value” 表示一个 Object 类型的形参
      g. ArrayList 对象是一个集合对象,你可以理解称一维数组,但是这个数组的元素个数可以任意,它会自动管理并分配需要的内存,里面的每个元素类型都是 object
      g. 好了, 看 demo:ArrayList myList1 = ArrayList.Repeat( "abc", 7 ); // 这里将执行 string 类型到 object 类型的隐式转换
    foreach ( Object obj in myList )
       Console.Write( "{0}", obj ); 
    // 输出
    // abc   abc   abc   abc   abc   abc   abc
    ArrayList myList2 = ArrayList.Repeat( 123, 7 ); // 这里将执行 int 类型到 object 类型的隐式转换,实际上一个装箱的过程
    foreach ( Object obj in myList2 )
       Console.Write( "{0}", obj ); 
    // 输出
    // 123   123   123   123   123   123   123
    3。
    更多信息:
    ArrayList 类 使用大小可按需动态增加的数组实现 IList 接口。 http://msdn2.microsoft.com/zh-cn/library/system.collections.arraylist(VS.80).aspx
      

  2.   

    不好意思最后一句话打错了应当为"一定是类的实例吗"?
    ===========
    根据,我自己的解释,回答是肯定的!实际C# 中的 int 是 .net 中的 System.Int32
     int num = 911; // 这里 911 实际上就是一个 System.Int32 类的实例
      

  3.   


    我想问下 LZ ,你这里 repeat 的什么啊? 
    是 Repeat 了 arr.Count 个 arr (ArrayList) 对象你自己不就是LZ吗?路过挑字眼的.....
      

  4.   

    @conanlwl请看完再回,切莫断章取义 :D