c# - 我如何使用 for 循环初始化 T[] arr 类型的数组
问题描述
如何为这个泛型类初始化数组请帮忙
public class MarvellousArray<T>
{
private T[] array;
public MarvellousArray(int size)
{
array = new T[size];
}
public void Accept()
{
var i = 0;
for (i = 0; i < array.Length; i++)
{
}
}
public void Display()
{
}
}
解决方案
如果我明白你的意思......如果你需要,你可以这样做new
T
public class MarvellousArray<T>
where T : new()
{
private readonly T[] _array;
public MarvellousArray(int size)
{
_array = new T[size];
for (var i = 0; i < size; i++)
_array[i] = new T();
}
...
或者只是default
用于null
引用类型
public class MarvellousArray<T>
{
private readonly T[] _array;
public MarvellousArray(int size)
{
_array = new T[size];
for (var i = 0; i < size; i++)
_array[i] = default(T);
}
...
推荐阅读
- postgresql - nginx:在 PostgreSQL 中存储 POST 数据
- python-3.x - 如何修复错误:[Errno 2] 没有这样的文件或目录:'C:\\Program Files\\Python37\\lib\\venv\\scripts\\nt\\python_d.exe'
- javascript - jQuery:如何处理自闭合标签和多个循环?
- javascript - 更改节点 js 中获取的 json 数据?
- css - Running ADF apps in Chrome vs IE
- javascript - Laravel:获取最后一个插入ID并在注册前显示它
- html - 无法在容器内使用 float-right 移动我的 div
- powerbi - Power BI 网关数据源是否忽略用于创建数据集的凭据?
- angular6 - Angular 2单选按钮ngmodel
- cordova - 我可以在不离开 Capacitor 应用程序的情况下导航到网络吗?