【发布时间】:2016-07-19 22:25:50
【问题描述】:
我正在努力
var mahByteArray = new ArrayList<byte>();
而且它不起作用。 它是这样说的:
非泛型类型“System.Collectios.ArrayList”不能与 类型参数
声明字节ArrayList的正确方法是什么?
【问题讨论】:
我正在努力
var mahByteArray = new ArrayList<byte>();
而且它不起作用。 它是这样说的:
非泛型类型“System.Collectios.ArrayList”不能与 类型参数
声明字节ArrayList的正确方法是什么?
【问题讨论】:
您将 Java ArrayList 集合 与 C# List 泛型集合 混淆了。两者都用于声明集合,但第一个在 Java 中用作集合框架的泛型类 List 中定义的类型,而在 C# 语言中用作隐式泛型类型。
因此,您必须声明为List 类型。查看List的详细信息。
var mahByteArray = new List<byte>();
或
List<byte> mahByteArray = new List<byte>() { 2, 3, 4 };
【讨论】:
确定你可以使用ArrayList
var mahByteArray = new ArrayList();
mahByteArray.Add((byte) 230);
【讨论】:
ArrayList<> 不是通用的。你可以改用通用的List<>
var mahByteArray = new List<byte>();
【讨论】:
ArrayList 不是通用的。请改用System.Collections.Generic.List<T>。 List<T> 类是ArrayList 类的通用等价物。它使用一个数组来实现IList<T> 泛型接口,该数组的大小根据需要动态增加。
var mahByteArray = new List<byte>();
【讨论】: