2021.07.01
【初心者Unity】ArrayListをListに変換しよう!
はじめに
前回の記事では、ArrayListとLsitそれぞれの特徴をを比べ、用途に応じて使い分けることができるという話をしました。しかし、ArrayListを作成したはいいけれどやっぱりListで作った方がよかったな。。。となった場合はどうしましょう?今回の記事ではそんな悩みにお答えすべく、ArrayListをListに変換する方法をご紹介します。
ArrayListをListに変換する
それでは早速ArrayListをListに変換してみましょう。
ArrayListをListに送るメソッドとしてToList()メソッドを使います。しかしToListはあくまでもArrayListのデータをListに送るだけで、変換を行うわけではありません。変換を行う際の重要なポイントとしてArrayListとListの相違点に着目する必要があります。これら2つの相違点とは何だったか。。。それはズバリ!型にうるさいか否かでした!ArrayListは型は気にせず好きなデータを放り込んでよかったのに対し、Listは型に厳しく、指定した1つの型しか入れることができませんでした。つまり、ArrayListのデータをListに送る際に、同時に型の変換を行わないといけないということです。型の変換を行うメソッドとして、Cast<>()メソッドがあります。つまり、ToListとCastを組み合わせることでArrayListをListに変換することができるのです。
実際に変換を行っている例は以下の通りです。
//ArrayList「arrayList」の定義 ArrayList arrayList = new ArrayList { 1, 2, 3 }; //ArrayListをListに変換してかつListに送っている List< int > list = arrayList.Cast< int >().ToList();
おわりに
いかがでしょうか?ArrayListを作成したけれども、後からListにすればよかったと後悔していた方、お悩みを解決することはできましたでしょうか?次回は今回の反対で、ListをArrayListに変換する方法をご紹介します。乞うご期待!