C#中的ArrayList是Java中ArrayList的一个很好的等价物吗?

use*_*468 2 c# java arraylist

我是C#的新手 - 在50行代码中.

所以问题是C#中的ArrayList是Java中ArrayList的一个很好的替代品.

以下是我注意到的一些差异:

  1. C#中的ArrayList似乎不支持泛型 - 这是令人惊讶的,它让我相信我正在看一个较旧的集合类.
  2. 我似乎无法使用set(index,value)在Java中就地替换元素
  3. 更令人困惑的是,要访问C#中的元素n,我必须使用数组访问器[n]而不是get(n)
  4. 进一步想到我可以使用[]访问c#中的元素我无法设置说myarraylist [n] ="bla"

所以这让我相信我在这里遗漏了一些东西 - 也许是关于C#设计哲学的东西.

我已经尝试在互联网上为Java程序员挖掘C#,但我对这个问题仍然没有很好的答案.

Hab*_*bib 12

使用List<T>仿制药,也就是大致相当于Java的ArrayList

List(Of T)类是ArrayList类的通用等价物.它通过使用一个数组来实现IList(Of T)泛型接口,该数组的大小根据需要动态增加.

  • @ user1172468 - 请记住,在你有良好的分析表明它确实是集合算法的实现而不是类的糟糕设计之前,不应该尝试你所引用的那种性能优化. (3认同)