Sobes.tech

В чем разница между newFixedThreadPool и ForkJoinPool?

Senior
Octo
8

Какие стратегии наследования знаешь в JPA? Какие использовал?

Senior
Позитив Технолоджис
8

Как Spring инжектирует все реализации интерфейса в сервис?

Senior
EXPERA
8

Как будет распределяться чтение топиков и партиций между экземплярами Processing Service (масштабирование)?

Senior
OZONOZON
8

Куда вешается аннотация @RequestHeader?

Senior
СБЕРСБЕР
8

Приходилось ли использовать классы из java.util.concurrent?

Senior
Альфа-БанкАльфа-Банк
8

Почему не использовали ZGC или Shenandoah?

Senior
атон
8

С какими NoSQL базами данных работал?

Senior
СБЕРСБЕР
8

Какая у вас была версия Java?

Senior
Uzum
8

Расскажите про иерархию коллекций в Java

Senior
СБЕРСБЕР
8

Примитивное поле объекта — где будет лежать, в heap или в стеке?

Senior
SSP Soft
8

Расскажите про свой опыт работы и последний проект

Senior
МТСМТС
8

Как реализовывали параллельную обработку запросов с помощью Kafka? В чём заключалась реализация?

Senior
01.tech
8

2. Посчитайте для каждой валюты разницу между самым большим и самым маленьким заказом типа DELIVERY. Верните результат вычисления для каждой валюты. Валюты в результате должны находиться в порядке возрастания этой разницы. /** * Возвращает map вида {валюта (в порядке возрастания разницы) – разница между самым большим и маленьким заказом типа DELIVERY для валюты}. * Если по какой-то валюте только один заказ, то он является и самым большим и самым маленьким и разница равна 0. * Пример входных данных: * [ * Order(DELIVERY, "EUR", 2000), * Order(DELIVERY, "USD", 15), * Order(DELIVERY, "RUB", 200), * Order (PICKUP, "RUB", 1250), * Order (DELIVERY, "USD", 35), * Order (PICKUP, "USD", 55), * Order (DELIVERY, "RUB", 100) * ] * * Ожидаемый результат: * ["EUR" -> 0.0, "USD" -> 20.0, "RUB" -> 100.0] * */ Map<String, Double> getMaxMinusMinDeliveryMapByCurrency(List<OrderData> orderDataList) { } class OrderService { enum Type {DELIVERY, PICKUP} static class OrderData { final Type type; final String currency; final Long amount; OrderData(Type type, String currency, Long amount) { this.type = type; this.currency = currency; this.amount = amount; } String getCurrency() { return currency; } Long getAmount() { return amount; } Type getType() { return type; } } static class MinMax { long min; long max; MinMax(long amount) { this.min = amount; this.max = amount; } void update(long amount) { min = Math.min(min, amount); max = Math.max(max, amount); } double diff() { return (double) (max - min); } } Map<String, Double> getMaxMinusMinDeliveryMapByCurrency(List<OrderData> orderDataList) { Map<String, MinMax> statsByCurrency = new HashMap<>(); for (OrderData order : orderDataList) { if (order == null) { continue; } if (order.getType() != Type.DELIVERY) { continue; } String currency = order.getCurrency(); long amount = order.getAmount(); MinMax current = statsByCurrency.get(currency); if (current == null) { statsByCurrency.put(currency, new MinMax(amount)); } else { current.update(amount); } } List<Map.Entry<String, MinMax>> resultList = new ArrayList<>(); for (Map.Entry<String, MinMax> entry : statsByCurrency.entrySet()) { String currency = entry.getKey(); double diff = entry.getValue().diff(); resultList.add(Map.entry(currency, diff)); } resultList.sort(Comparator.comparingDouble(Map.Entry::getValue)); Map<String, Double> result = new LinkedHashMap<>(); for (Map.Entry<String, Double> entry : resultList) { result.put(entry.getKey(), entry.getValue()); } return result; } }

Middle+
Мираполис
8

Что такое ACID? Что такое constraint в терминологии ACID?

Senior
Сбербанк
8

Что такое промежуточные и терминальные операторы в Stream? Приведите примеры.

Senior
СБЕРСБЕР
8

10 приложений-обработчиков забирают задачи из БД. Как не допустить, чтобы два экземпляра взяли одну задачу?

Senior
Альфа-БанкАльфа-Банк
8

public class RefEx { public static class PdfProcessor implements DocumentProcessor { } public static class DocxProcessor implements DocumentProcessor { @Override public void process(Document document) { // Специфическая логика для обработки Word } } public static class XmlProcessor implements DocumentProcessor { @Override public void process(Document document) { // Специфическая логика для обработки XML } } public static class DocumentService { private final Map<DocumentType, DocumentProcessor> processors = Map.of( DocumentType.PDF, new PdfProcessor(), DocumentType.DOCX, new DocxProcessor(), DocumentType.XML, new XmlProcessor() ); public void process(Document[] documents) { for (Document doc : documents) { DocumentProcessor processor = processors.get(doc.type); if (processor == null) { break; } // Общая логика обработки документа processor.process(doc); } } } }

Middle
экзон
8

Как работает Redis sorted set для хранения отложенных задач и сколько памяти занимает?

Senior
ИП Ганус Александр Андреевич
8

Зачем нужна балансировка дерева? За счёт чего достигается быстрый поиск?

Senior
МВидео/эльдорадо
8
/714