«generics» 태그된 질문

제네릭은 .NET 언어, Java, Swift 및 Rust를 포함하여 다양한 언어로 발견되는 파라 메트릭 다형성의 한 형태입니다.

5
?의 nullable 형식 문제 : 조건부 연산자
누군가 이것이 C # .NET 2.0에서 작동하는 이유를 설명 할 수 있습니까? Nullable<DateTime> foo; if (true) foo = null; else foo = new DateTime(0); ...하지만 그렇지 않습니다 : Nullable<DateTime> foo; foo = true ? null : new DateTime(0); 후자의 형식은 " 'null>'과 'System.DateTime'사이에 암시 적 변환이 없기 때문에 조건식의 유형을 …

8
"varargs 매개 변수에 대해 T의 일반 배열이 생성됨"컴파일러 경고를 해결할 수 있습니까?
이것은 문제가되는 코드의 단순화 된 버전입니다. 한 제네릭 클래스는 제네릭 유형 매개 변수가있는 다른 클래스를 사용하고 제네릭 유형 중 하나를 varargs 매개 변수가있는 메서드에 전달해야합니다. class Assembler<X, Y> { void assemble(X container, Y... args) { ... } } class Component<T> { void useAssembler(T something) { Assembler<String, T> assembler = new …
154 java  generics 



3
C #-하나의 목록에 여러 제네릭 형식
이것은 아마도 불가능하지만이 수업이 있습니다. public class Metadata<DataType> where DataType : struct { private DataType mDataType; } 더 많은 것이 있지만 간단하게 유지합시다. 일반 유형 (DataType)은 where 문에 의해 값 유형으로 제한됩니다. 내가하고 싶은 것은 다양한 유형 (DataType)의 메타 데이터 개체 목록입니다. 같은 : List<Metadata> metadataObjects; metadataObjects.Add(new Metadata<int>()); metadataObjects.Add(new Metadata<bool>()); …
153 c#  generics 

7
Java Enum 정의
Java generics를 꽤 잘 이해했다고 생각했지만 java.lang.Enum에서 다음을 발견했습니다. class Enum<E extends Enum<E>> 누군가이 유형 매개 변수를 해석하는 방법을 설명 할 수 있습니까? 유사한 유형 매개 변수가 사용될 수있는 다른 예를 제공하기위한 보너스 포인트.
151 java  generics  enums  crtp 

3
C #에서 동등한 Java Map
선택 키를 사용하여 컬렉션의 항목 목록을 보유하려고합니다. Java에서는 간단히 다음과 같이 Map을 사용합니다. class Test { Map<Integer,String> entities; public String getEntity(Integer code) { return this.entities.get(code); } } C # 에서이 작업을 수행하는 동등한 방법이 있습니까? System.Collections.Generic.Hashset해시를 사용하지 않으며 사용자 정의 유형 키를 정의 할 수 없습니다 System.Collections.Hashtable일반 클래스 System.Collections.Generic.Dictionary에는 get(Key)메소드 …
150 c#  java  generics  collections 

7
Java 열거 리터럴이 일반 유형 매개 변수를 가질 수없는 이유는 무엇입니까?
Java 열거 형은 훌륭합니다. 제네릭도 마찬가지입니다. 물론 우리는 유형 삭제로 인해 후자의 한계를 알고 있습니다. 그러나 이해할 수없는 한 가지가 있습니다. 왜 이런 식으로 열거 형을 만들 수 없습니까? public enum MyEnum<T> { LITERAL1<String>, LITERAL2<Integer>, LITERAL3<Object>; } 이 제네릭 형식 매개 변수 <T>는 여러 곳에서 유용 할 수 있습니다. 메소드에 …
148 java  generics  enums 

4
예를 들어 (공동, 대조 및 in) 분산이 어떻게 작동합니까?
이 질문 에 이어 누군가 Scala에서 다음을 설명 할 수 있습니다. class Slot[+T] (var some: T) { // DOES NOT COMPILE // "COVARIANT parameter in CONTRAVARIANT position" } 형식 선언 +T과 T형식 선언 의 차이점을 이해합니다 (을 사용하면 컴파일됩니다 T). 하지만 어떻게 하나 실제로 일을 만들기에 의지하지 않고 형식 매개 …

9
<의 차이점은 무엇입니까? 슈퍼 E>와 <? E>를 확장합니까?
차이점은 무엇이며 &lt;? super E&gt;그리고 &lt;? extends E&gt;? 예를 들어 클래스를 살펴보면 java.util.concurrent.LinkedBlockingQueue생성자에 대해 다음과 같은 서명이 있습니다. public LinkedBlockingQueue(Collection&lt;? extends E&gt; c) 그리고 방법에 대한 하나 : public int drainTo(Collection&lt;? super E&gt; c)
147 java  generics 

12
Jackson-일반 클래스를 사용하여 직렬화 해제
json 문자열이 있는데 다음 클래스로 직렬화 해제해야합니다. class Data &lt;T&gt; { int found; Class&lt;T&gt; hits } 어떻게합니까? 이것은 일반적인 방법입니다 mapper.readValue(jsonString, Data.class); 그러나 T가 의미하는 것을 어떻게 언급합니까?
147 java  json  generics  jackson 

5
클래스 유형을 함수 매개 변수로 전달하는 방법
웹 서비스를 호출하고 JSON 응답을 다시 객체로 직렬화하는 일반 함수가 있습니다. class func invokeService&lt;T&gt;(service: String, withParams params: Dictionary&lt;String, String&gt;, returningClass: AnyClass, completionHandler handler: ((T) -&gt; ())) { /* Construct the URL, call the service and parse the response */ } 내가 달성하려는 것은이 Java 코드와 같습니다. public &lt;T&gt; T invokeService(final …

5
Java가 Throwable의 일반 서브 클래스를 허용하지 않는 이유는 무엇입니까?
Java Language Sepecification , 3 판 에 따르면 : 일반 클래스가의 직접 또는 간접 하위 클래스 인 경우 컴파일 타임 오류입니다 Throwable. 이 결정이 내려진 이유를 이해하고 싶습니다. 일반적인 예외의 문제점은 무엇입니까? (내가 아는 한, 제네릭은 단순히 컴파일 타임 구문 설탕이며 파일 Object에서 어쨌든 번역 .class되므로 제네릭 클래스를 효과적으로 선언하는 …

6
'T'유형의 값은로 변환 할 수 없습니다
이것은 초보자 질문 일 가능성이 있지만 Google은 놀랍게도 답변을 제공하지 않았습니다. 이 인공적인 방법이 있습니다 T HowToCast&lt;T&gt;(T t) { if (typeof(T) == typeof(string)) { T newT1 = "some text"; T newT2 = (string)t; } return t; } C ++ 배경에서 오는 것은 이것이 효과가 있다고 예상했습니다. 그러나 위의 두 가지 …
146 c#  .net  generics  casting 

11
제네릭 클래스의 형식 매개 변수에서 새 개체를 만듭니다.
제 일반 클래스에서 유형 매개 변수의 새 객체를 만들려고합니다. 내 클래스 View에는 유형 매개 변수로 전달 된 일반 유형의 객체 목록이 2 개 있지만 new TGridView(), 만들려고 할 때 TypeScript는 다음과 같이 말합니다. 'TGridView 기호를 찾을 수 없습니다 이것은 코드입니다. module AppFW { // Represents a view export class View&lt;TFormView …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.