Tagged: generics

24
Июл
2021

Про обобщения (generics)

Чем такой формат объявления метода
<T extends Number> double sum(Collection<T> c ) {…}

отличен от
double sum2(Collection<? extends Number> c ) {…}

если в итоге результат не отличается ?
что лучше использовать и …

24
Июл
2021

Про обобщения (generics)

Чем такой формат объявления метода
<T extends Number> double sum(Collection<T> c ) {…}

отличен от
double sum2(Collection<? extends Number> c ) {…}

и что лучше использовать и почему ?

24
Июл
2021

Про обобщения (generics)

Чем такой формат объявления метода
<T extends Number> double sum(Collection<T> c ) {…}

отличен от
double sum2(Collection<? extends Number> c ) {…}

и что лучше использовать и почему ?

22
Июл
2021

Как назначить типу значение по умолчанию (generic | type | class)?

TypeScript Есть некоторый класс.
Экземпляр класса содержит ссылки на тип производный от этого класса.
// Так я пытаюсь передать классу используемый тип, при этом если не передается
// параметр типа, он должен вывести тип `Some`(сам себя).

21
Июл
2021

Java, наследование, методы, generics

У нас есть интерфейс сущности EntityI и его реализация Entity.
Так же имеется интерфейс SetupProviderI, у которого есть метод M1 возвращающий сущность EntityI, и реализация SetupProvider, у которого метод М1 возвращает Entity.
Все работает…

15
Июл
2021

Подставление типа для дженерика

Изучаю дженерики. Возник такой вопрос, поскольку на момент компиляции стираются типы, и компилятор их видит, как объекты типа Object, из-за чего накладывается много ограничений на использование дженериков из-за RuntimeException, мне не пон…

14
Июл
2021

Класс от класса с generics

Есть метод
public Class<MyClass<String>> getClassType() {
}

Как вернуть нужный класс с женериком? Если возвращать MyClass.class, то ругается на несоответствие типов, так как вернуть требуется Class<MyClass< String>&gt…

23
Май
2021

Почему в обобщённом методе не работает компаратор?

Само задание:
Определен enum CompareResult {LESS, EQUAL, GREATER};
Создайте статический метод с именем compare, который содержит 2 параметра обобщающего типа, и сравнивает их через метод compareTo(). Метод compare должен возвращать Compare…

23
Май
2021

В обобщённом методе не работает компаратор. Не могу понять почему

Само задание:
Определен enum CompareResult {LESS, EQUAL, GREATER};
Создайте статический метод с именем compare, который содержит 2 параметра обобщающего типа, и сравнивает их через метод compareTo(). Метод compare должен возвращать Compare…

18
Май
2021

Почему не проходит компиляцию класс с обобщенным методом?

Товарищи подскажите. Создал класс с обобщенным методом с переменным количеством аргументов Sumary() который суммирует значения извлекаемые из объектов оболочек методом intValue().
При компиляции выдает ошибку указанную ниже. Подскажите в ч…

29
Апр
2021

Non-static method ‘sum(java.util.List<Box<? extends java.lang.Number>>)’ cannot be referenced from a static context

Дали задание сделать метод типа double который на вход принимает list<Box>(Лист боксов), причем в боксе лежит любые данные которые являются наследником Number и нужно вычислить сумму всех элементов. Вроде все сделал, но не могу понят…

16
Апр
2021

Макрос на генерацию функций при помощи _Generic

Приветствую откликнувшихся! Столкнулся с задачей, где нужно было написать конверторы из void* простого типа в строку,
Что бы использовать их далее при конвертации сложных структур в строки.
Описал функцию для одного типа так:
#define _CRT_…

16
Апр
2021

Макрос на генерацию функций при помощи _Generic

Приветствую откликнувшихся! Столкнулся с задачей, где нужно было написать конверторы из void* простого типа в строку,
Что бы использовать их далее при конвертации сложных структур в строки.
Описал функцию для одного типа так:
#define _CRT_…

05
Фев
2021

не работает итератор в hashmap

Дали задание написать простой HashMap c тестами
public class SimpleHashMap<K,V> implements Iterable
параметризован T почему то не показывает
private T[] array;
private int load;
private int modCount;
private int size;

31
Янв
2021

метасимволый аргумент при объявлении типа

Встретил объявление племенных подобного вида: Класс<?> имя переменной… Понятно, что классы с таким объявлением являются обобщенными, но не понятно какую роль здесь играет метасимвольный аргумент – "?". Если проводить анал…

28
Янв
2021

на что в байткоде у дженериков заменяется конструкция <T super MyClass>

Насколько я понял, дженерики после компиляции заменяются в скомпилированном коде на конструкции без дженериков.
Так, например параметризованный метод

public &ltT&gt T f(){
T t = null;
return t;
}

Превращается…

28
Янв
2021

Приведение типов при использовании дженериков

Ниже пример кода, где происходит не совсем понятные вещи, связанные с преобразованиями при использовании дженериков. Есть два класса, один наследует другой (А и B). Так же есть обобщенный метод (f1). Методу сообщаем, что хотим, что бы он в…

03
Янв
2021

interface Comporator как использовать в параметрах метода java

Задача стоит такая: Добавить НЕ СТАТИЧЕСКИЙ метод void sort(Comparator<…….> comparator). Данный метод занимается сортировкой данных записанных в поле data используя реализацию сравнения из ПЕРЕДАННОГО объекта comparator.
В общем …

14
Дек
2020

WildCard в сигнатуре метода

<T extends A> void foo(List<T> list) {}

почему такой синтаксис допустим
<T super A> void foo(List<T> list) {}

но такой нет? Также хотелось бы увидеть объяснение простым языком (если можно с примерами) почему добав…

26
Ноя
2020

Проверить на null

Определите и реализуйте общий статический метод, hasNull который возвращается, true если входной массив имеет null элемент, и в false противном случае.
Sample Input 1:
String
There are elements of the array
Sample Output 1:
false
class Arr…

26
Ноя
2020

Инвертирование массива

Помогите выполнить задание, ломаю голову уже 2й час.
Определите и реализуйте общий статический метод invert, который возвращает инвертированную версию входного массива. Вы можете инвертировать массив на месте во входном массиве.
Sample Inp…