创建唯一对象列表

时间:2014-08-15 10:49:27

标签: dart

我正在尝试使用我选择的唯一对象填充List,稍后将对其执行操作。它只是我,还是以下不直观:

class Event {
    void bang()
    {
        type = "bang";
    }

    String type;
}

void main()
{
    var intList= new List<int>.filled( 4, 0 );
    intList[1] = 1;

    var eventList = new List<Event>.filled( 4, new Event() );
    eventList[1].bang();    
}

此时,intList看起来像[0, 1, 0, 0],而eventList的所有四个广告位都填充了相同的Event对象,其type字符串全部等于“爆炸”。

我所希望的是一个包含四个独立Event个对象的列表,实现这一目标的最佳方法是什么?我当然可以在for循环中构建List:

var eventList = new List<Event>( 4 );
for( int i = 0; i < 4; i++ ) {
    events[i] = new Event();
}

但这显然代码更多,耗时且容易出错。更不用说在VM方面可能会更慢。

0 个答案:

没有答案