ConvertAllbukan sebuah ekstensi, ini adalah metode dalam kelas daftar. Anda tidak perlu memanggil ToListhasilnya karena sudah ada daftar:
List<int> list2 = list.ConvertAll(x => 2 * x);
Jadi, perbedaannya adalah bahwa ConvertAllmetode ini hanya dapat digunakan pada daftar, dan mengembalikan daftar. The SelectMetode dapat digunakan pada setiap koleksi yang mengimplementasikan dalam IEnumerable<T>antarmuka, dan mengembalikan sebuah IEnumerable<T>.
Selain itu, mereka melakukan pemrosesan secara berbeda, sehingga mereka memiliki kekuatan dalam situasi yang berbeda. The ConvertAllMetode berjalan melalui daftar dan membuat daftar baru dalam satu pergi, sedangkan Selectmetode menggunakan eksekusi malas dan hanya memproses item yang Anda butuhkan mereka. Jika Anda tidak membutuhkan semua item, Selectmetode ini lebih efisien. Di sisi lain, setelah ConvertAllmengembalikan daftar, Anda tidak perlu menyimpan daftar asli.