«generics» etiketlenmiş sorular

Jenerikler, .NET dilleri, Java, Swift ve Rust gibi çeşitli dillerde bulunan bir tür parametrik polimorfizmdir.


7
"Özel Sınıf" tam olarak nedir?
Derlemek için aşağıdaki gibi bir şey elde edemedikten sonra: public class Gen<T> where T : System.Array { } hata ile Bir kısıtlama özel bir sınıf `` System.Array '' olamaz Ben, tam olarak ne merak başladı olan bir "özel sınıf"? İnsanlar genellikle System.Enumgenel bir kısıtlamada belirttiklerinde aynı türden bir hata alıyor …

5
Void nesnesini döndürmek
Voidİlkel olmayan bir türü döndürmenin doğru yolu nedir ? Örneğin. Şu anda aşağıdaki gibi null kullanıyorum. interface B<E>{ E method(); } class A implements B<Void>{ public Void method(){ // do something return null; } }

2
"Herhangi bir genel tür" tanımıyla C # genel "nerede kısıtlama"?
Örnek vereyim: Bazı genel sınıf / arayüz tanımım var: interface IGenericCar< T > {...} Yukarıdaki sınıfla ilişkilendirmek istediğim başka bir sınıfım / arayüzüm var, örneğin: interface IGarrage< TCar > : where TCar: IGenericCar< (**any type here**) > {...} Temel olarak, jenerik IGarrage'ımın IGenericCar, olup olmadığına bakılmaksızın IGenericCar<int>veya IGenericCar<System.Color>bu türe herhangi …

2
Java denetlenmemiş: varargs parametresi için denetlenmemiş genel dizi oluşturma
Netbeans'i Java kodumda kontrol edilmemiş uyarılar gösterecek şekilde ayarladım, ancak aşağıdaki satırlarda hatayı anlayamıyorum: private List<String> cocNumbers; private List<String> vatNumbers; private List<String> ibans; private List<String> banks; ... List<List<String>> combinations = Utils.createCombinations(cocNumbers, vatNumbers, ibans); verir: [unchecked] unchecked generic array creation for varargs parameter of type List<String>[] Yöntem kaynağı: /** * Returns …

14
Bir List <T> belirli bir boyuta (kapasitenin tersine) nasıl başlatılır?
.NET, performansı neredeyse aynı olan genel bir liste kapsayıcısı sunar (bkz. Dizilerin Performansı ve Listeler Sorusu). Ancak, başlatmada oldukça farklıdırlar. Dizilerin varsayılan bir değerle başlatılması çok kolaydır ve tanım gereği zaten belirli bir boyuta sahiptirler: string[] Ar = new string[10]; Bu, rastgele öğeleri güvenli bir şekilde atamanıza izin verir, örneğin: …

4
Lambda İfadesi ve genel yöntem
Genel bir arayüzüm olduğunu varsayalım: interface MyComparable&lt;T extends Comparable&lt;T&gt;&gt; { public int compare(T obj1, T obj2); } Ve bir yöntem sort: public static &lt;T extends Comparable&lt;T&gt;&gt; void sort(List&lt;T&gt; list, MyComparable&lt;T&gt; comp) { // sort the list } Bu yöntemi çağırabilir ve argüman olarak bir lambda ifadesi geçirebilirim: List&lt;String&gt; list = …
111 java  generics  lambda  java-8 

7
Null yapılabilir her şey için C # genel tür kısıtlaması
Bu yüzden bu sınıfa sahibim: public class Foo&lt;T&gt; where T : ??? { private T item; public bool IsNull() { return item == null; } } Şimdi, olabilecek her şeyi tür parametresi olarak kullanmama izin veren bir tür kısıtlaması arıyorum null. Bu, tüm Nullable( T?) türlerinin yanı sıra tüm referans …
111 c#  generics  nullable 

1
Java jeneriklerinde '&' ve ',' arasındaki fark nedir?
Jenerikler hakkındaki resmi Java öğreticisini okurken, tür bağımsız değişkenini (bu durumda T) bir sınıfı ve / veya daha fazla arabirimi 've' operatörü ( &amp;) ile genişletmek için şu şekilde kısıtlayabileceğinizi öğrendim : &lt;T extends MyClass &amp; Serializable&gt; Ben yerini &amp;ile ,(yanlışlıkla ve hala küçük bir uyarı ile, çalışır). Sorum şu, …
110 java  generics 


5
Kotlin: Liste yayınlarıyla nasıl çalışılır: Denetlenmemiş Oyuncular: kotlin.collections.List <Kotlin.Any?> Kotlin.colletions.List <Waypoint>
Listİlk veya son öğe olmayan (bir geçiş noktası) içindeki her öğeyi döndüren bir işlev yazmak istiyorum . İşlev List&lt;*&gt;, girdi olarak bir genel alır . Bir sonuç, yalnızca listenin öğeleri şu türdeyse döndürülmelidir Waypoint: fun getViaPoints(list: List&lt;*&gt;): List&lt;Waypoint&gt;? { list.forEach { if(it !is Waypoint ) return null } val waypointList …
109 list  generics  casting  kotlin 



8
Java Class.cast () ile cast operatörü karşılaştırması
Ben Java 5 bulmak için ilk başta memnun etti C tarzı döküm operatörü kötülükleri hakkında benim C ++ gün boyunca öğretilen olması java.lang.Classbir edinmişti castyöntemi. Sonunda oyuncu kadrosuyla başa çıkmak için bir OO yöntemimiz olduğunu düşündüm. C ++ 'daki ile Class.castaynı olmadığı ortaya çıktı static_cast. Daha çok benziyor reinterpret_cast. Beklendiği …

3
Jackson ve genel tür başvurusu
Aşağıdaki gibi genel bir yöntem için jackson json kitaplığını kullanmak istiyorum: public MyRequest&lt;T&gt; tester() { TypeReference&lt;MyWrapper&lt;T&gt;&gt; typeRef = new TypeReference&lt;MyWrapper&lt;T&gt;&gt;(); MyWrapper&lt;T&gt; requestWrapper = (MyWrapper&lt;T&gt;) JsonConverter.fromJson(jsonRequest, typeRef); return requestWrapper.getRequest(); } ... public class MyWrapper&lt;T&gt; { private MyRequest&lt;T&gt; request; public MyRequest&lt;T&gt; getRequest() { return request; } public void setRequest(MyRequest&lt;T&gt; request) { this.request …
107 java  json  generics  jackson 

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.