CakePHP(v 3.x)、CollectionクラスのtoListとtoArrayの違いについて

Collectionクラスを使ってObjectの操作をすることがあるかと思いますが、以下のような多重配列を操作する場合、

$my_list = [
  [
    'name' => 'bill',
    'gender' => 'male',
  ],
  [
    'name' => 'mary',
    'gender' => 'female',
  ],
  [
    'name' => 'bob',
    'gender' => 'male',
  ]
];

コレクションクラスで

 collection($my_list)->reject(function('person'){return person['gender']=='female';})->toList();

とし、List貸した場合は多重配列が展開されてList化されるわけではなくIndexがenumとなります。

  '0' => [
    'name' => 'bill',
    'gender' => 'male',
  ],
  '1' => [
    'name' => 'bob',
    'gender' => 'male',
  ]

一方同様な操作でtoArrayとした場合は、

 collection($my_list)->reject(function('person'){return person['gender']=='female';})->toArray();

結果は以下のようになります。

  '0' => [
    'name' => 'bill',
    'gender' => 'male',
  ],
  '2' => [
    'name' => 'bob',
    'gender' => 'male',
  ]