Ho usato la parola chiave "select" e il metodo di estensione per restituire un IEnumerable<T>con LINQ, ma ho bisogno di restituire un generico Dictionary<T1, T2>e non riesco a capirlo. Nell'esempio che ho imparato da ciò ho usato qualcosa in una forma simile alla seguente: IEnumerable<T> coll = from x in …
Questo è un esempio reale di un'API di librerie di terze parti, ma semplificato. Compilato con Oracle JDK 8u72 Considera questi due metodi: <X extends CharSequence> X getCharSequence() { return (X) "hello"; } <X extends String> X getString() { return (X) "hello"; } Entrambi riportano un avviso "non controllato" - …
è possibile passare il tipo di interfaccia con generici? L'interfaccia: public interface AsyncCallback<T> Nel mio metodo di prova: Mockito.any(AsyncCallback.class) Mettere <ResponseX>dietro o per non .classfunzionare.
Posso passare un metodo con un parametro out come Func? public IList<Foo> FindForBar(string bar, out int count) { } // somewhere else public IList<T> Find(Func<string, int, List<T>> listFunction) { } Func ha bisogno di un tipo in modo che out non si compili lì, e chiamando listFunction richiede un int …
Apparentemente ci sono molti modi per scorrere su una raccolta. Curioso se ci sono differenze o perché dovresti usare un modo rispetto all'altro. Primo tipo: List<string> someList = <some way to init> foreach(string s in someList) { <process the string> } Altro modo: List<string> someList = <some way to init> …
Sono nuovo di Java e molto confuso. Ho un set di dati di grandi dimensioni di lunghezza 4 int[]e voglio contare il numero di volte in cui si verifica ogni particolare combinazione di 4 numeri interi. Questo è molto simile al conteggio delle frequenze delle parole in un documento. Voglio …
C'è un modo per rendere generico questo metodo in modo che io possa restituire una stringa, un valore bool, int o double? In questo momento, sta restituendo una stringa, ma se è in grado di trovare "true" o "false" come valore di configurazione, ad esempio, vorrei restituire un valore bool. …
Ho un'interfaccia generica public interface Consumer<E> { public void consume(E e); } Ho una classe che consuma due tipi di oggetti, quindi vorrei fare qualcosa del tipo: public class TwoTypesConsumer implements Consumer<Tomato>, Consumer<Apple> { public void consume(Tomato t) { ..... } public void consume(Apple a) { ...... } } Apparentemente …
C'è un modo per ottenere la seguente dichiarazione di funzione? public bool Foo<T>() where T : interface; vale a dire. dove T è un tipo di interfaccia (simile a where T : class, e struct). Attualmente ho optato per: public bool Foo<T>() where T : IBase; Dove IBase è definito …
So che Java implementa il polimorfismo parametrico (Generics) con la cancellazione. Capisco cos'è la cancellazione. So che C # implementa il polimorfismo parametrico con reificazione. So che può farti scrivere public void dosomething(List<String> input) {} public void dosomething(List<Int> input) {} o che puoi sapere in fase di esecuzione quale sia …
Da Effective Java di Joshua Bloch, Le matrici differiscono dal tipo generico in due modi importanti. I primi array sono covarianti. I generici sono invarianti. Covariant significa semplicemente che se X è un sottotipo di Y, allora X [] sarà anche un sottotipo di Y []. Le matrici sono covarianti …
Puoi vedere cosa sto cercando (ma non riesco) di fare con il seguente codice: protected T GetObject() { return new T(); } Qualsiasi aiuto sarebbe molto apprezzato. MODIFICARE: Il contesto era il seguente. Stavo giocando con una classe di controller personalizzati da cui derivano tutti i controller, con metodi standardizzati. …
Ne ho uno di ArrayList<String>cui vorrei restituire una copia. ArrayListha un metodo clone che ha la seguente firma: public Object clone() Dopo aver chiamato questo metodo, come posso ricollegare l'oggetto restituito ArrayList<String>?
Quindi ho un elenco generico e un oldIndexe un newIndexvalore. Voglio spostare l'oggetto in oldIndex, a newIndex... il più semplicemente possibile. Eventuali suggerimenti? Nota L'articolo dovrebbe trovarsi tra gli elementi in (newIndex - 1)e newIndex prima che fosse rimosso.
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.