Pertanyaan yang diberi tag «generics»

Generik adalah bentuk polimorfisme parametrik yang ditemukan dalam berbagai bahasa, termasuk bahasa .NET, Java, Swift, dan Rust.

18
Melewati satu item sebagai IEnumerable <T>
Apakah ada cara umum untuk mengirimkan satu item bertipe Tke metode yang mengharapkan IEnumerable&lt;T&gt;parameter? Bahasa adalah C #, framework versi 2.0. Saat ini saya menggunakan metode helper (ini. Net 2.0, jadi saya memiliki sejumlah metode casting / projecting helper yang mirip dengan LINQ), tetapi ini sepertinya konyol: public static class …
377 c#  .net  generics  ienumerable 



16
Periksa apakah suatu kelas berasal dari kelas generik
Saya memiliki kelas generik dalam proyek saya dengan kelas turunan. public class GenericClass&lt;T&gt; : GenericInterface&lt;T&gt; { } public class Test : GenericClass&lt;SomeType&gt; { } Apakah ada cara untuk mengetahui apakah suatu Typeobjek berasal GenericClass? t.IsSubclassOf(typeof(GenericClass&lt;&gt;)) tidak bekerja.
309 c#  generics  reflection 

8
IEnumerable dan Rekursi menggunakan imbal hasil
Saya memiliki IEnumerable&lt;T&gt;metode yang saya gunakan untuk menemukan kontrol di halaman WebForms. Metode ini rekursif dan saya mengalami beberapa masalah mengembalikan tipe yang saya inginkan ketika yield returnkembali nilai nilai panggilan rekursif. Kode saya terlihat sebagai berikut: public static IEnumerable&lt;Control&gt; GetDeepControlsByType&lt;T&gt;(this Control control) { foreach(Control c in control.Controls) { if …




13
Tidak ada atau standar perbandingan argumen generik dalam C #
Saya memiliki metode generik yang didefinisikan seperti ini: public void MyMethod&lt;T&gt;(T myArgument) Hal pertama yang ingin saya lakukan adalah memeriksa apakah nilai myArgument adalah nilai default untuk jenis itu, sesuatu seperti ini: if (myArgument == default(T)) Tetapi ini tidak dapat dikompilasi karena saya belum menjamin bahwa T akan mengimplementasikan operator …
288 c#  generics 

11
Jenis nullable sebagai parameter generik mungkin?
Saya ingin melakukan sesuatu seperti ini: myYear = record.GetValueOrNull&lt;int?&gt;("myYear"), Perhatikan tipe nullable sebagai parameter generik. Karena GetValueOrNullfungsi tersebut dapat mengembalikan nol, upaya pertama saya adalah ini: public static T GetValueOrNull&lt;T&gt;(this DbDataRecord reader, string columnName) where T : class { object columnValue = reader[columnName]; if (!(columnValue is DBNull)) { return (T)columnValue; …
287 c#  generics 

6
Menggunakan Mockito untuk mengejek kelas dengan parameter generik
Apakah ada metode bersih mengejek kelas dengan parameter generik? Katakanlah saya harus mengejek suatu kelas Foo&lt;T&gt;yang harus saya sampaikan ke metode yang mengharapkan a Foo&lt;Bar&gt;. Saya dapat melakukan hal berikut dengan cukup mudah: Foo mockFoo = mock(Foo.class); when(mockFoo.getValue).thenReturn(new Bar()); Dengan asumsi getValue()mengembalikan tipe generik T. Tapi itu akan memiliki anak …
280 java  generics  mockito 


17
Apa alasan saya tidak bisa membuat tipe array generik di Jawa?
Apa alasan mengapa Java tidak mengizinkan kami melakukannya private T[] elements = new T[initialCapacity]; Saya bisa mengerti. NET tidak mengizinkan kami untuk melakukan itu, seperti dalam. NET Anda memiliki tipe nilai yang pada saat run-time dapat memiliki ukuran yang berbeda, tetapi di Jawa semua jenis T akan menjadi referensi objek, …

3
Collections.emptyList () mengembalikan Daftar <Object>?
Saya mengalami beberapa masalah dalam menavigasi aturan Java untuk menyimpulkan parameter tipe generik. Pertimbangkan kelas berikut, yang memiliki parameter daftar opsional: import java.util.Collections; import java.util.List; public class Person { private String name; private List&lt;String&gt; nicknames; public Person(String name) { this(name,Collections.emptyList()); } public Person(String name,List&lt;String&gt; nicknames) { this.name = name; this.nicknames …

14
Dapatkan tipe generik java.util.List
Saya sudah; List&lt;String&gt; stringList = new ArrayList&lt;String&gt;(); List&lt;Integer&gt; integerList = new ArrayList&lt;Integer&gt;(); Apakah ada cara (mudah) untuk mengambil tipe generik dari daftar?
263 java  generics 

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.