СБЕР
#sber | Прислать задачу | Подписаться
@Service
@RequiredArgsConstructor
@Sl4j
class ProductServiceImpl implements ProductService {
private final ProductRepository repository;
private OtherService otherService;
private Map<String, String> dictionary;
@PostConstruct
@Transactional
public void postConstruct(){
dictionary = otherService.getDictionary();
}
@Autowired
public void setOtherService(OtherService otherService) {
this.otherService = otherService;
}
/** Метод возвращает список обработанных Продуктов
*
* @param productIds
* @return
*/
@Transactional
public List<ProductProcessResult> processProducts(List<Long> productIds){
productIds.stream().map(productIds.mapToObject)
//TODO
}
@Transactional
public Product getProduct(Long id){
if(id == null){
throw new UnsupportedOperationException("Не поддерживается");
}
return repository.findById(id);
}
public ProductProcessResult process(Product product) throws IOException
if(product.getProductStatus() == PROCESSED){
throw new IOException("нельзя обрабатывать продукт в состоянии PROCESSED");
}
otherService.process(product);
product.setProductState(PROCESSED);
return product;
}
}
@Getter
@HashcodeAndEquals
public class Product {
enum ProductStatus{
NEW, PROCESSED
}
private int id;
private ProductStatus productStatus;
private String name;
private Double price;
private List<String> tags;
Product(int id, ProductStatus productStatus, String name, Double price, List<String> tags){
this.id = id;
this.productStatus = productStatus;
this.name = name;
this.price = price;
this.tags = tags;
}
}
#sber | Прислать задачу | Подписаться
👍2
Россельхозбанк
#rshb | Прислать задачу | Подписаться
Есть две таблицы счета и операции по счетам
account(account_id, create_dt, client_id, status, balance)
transaction (transaction_id, create_dt, status, amount, account_id)
Найти все счета по которым не было операций с первого января 2025 года
#rshb | Прислать задачу | Подписаться
Открытые решения (вроде #repeat)
Что будет выведено на экран?
#opensolution | Подписаться
Что будет выведено на экран?
public class Predicate {
public static void main(String... args) {
int i = 5;
i = i++ + ++i;
System.out.println(i);
}
}
#opensolution | Подписаться
👍3🥰1
Сбер
#sber | Прислать задачу | Подписаться
public class Test {
public static void main(String[] args) {
int[] num = {1, 4, 5, 88, 100};
int res = calculate(num);
System.out.println("AVG:" + res);
}
public static int calculate(int[] num) {
int sum = 0;
for (int i = 0; i <= num.length; i++) {
sum += num[i];
}
return sum;
}
}
#sber | Прислать задачу | Подписаться
👍1🤯1
Яндекс
#yandex | Прислать задачу | Подписаться
1.
// Дана строка, состоящая из букв 'X', 'Y' и 'O'.
// Необходимо найти кратчайшее расстояние между буквами 'X' и 'Y', либо вывести 0, если 'X' либо 'Y' отсутствуют.
// Примеры:
// "YY" -> 0
// "XX" -> 0
// "XY" -> 1
// "YOX" -> 2
// "OOOXOOYOXO" -> 2
// "OOOXXOY"-> 2
#yandex | Прислать задачу | Подписаться
👍5
Яндекс
#yandex | Прислать задачу | Подписаться
2.
// Например, даны два массива
// [1, 2, 3, 2, 0]
// [5, 1, 2, 7, 3, 2]
// Надо вернуть [1, 2, 2, 3]
// (порядок неважен)
#yandex | Прислать задачу | Подписаться
🤷♂7👍3
This media is not supported in your browser
VIEW IN TELEGRAM
совсем забыл про #fridaymemes
😁19👍2🤷♂1
Элеста
Что будет выведено на экран?
Подписаться
Что будет выведено на экран?
TreeSet<String> strings = new TreeSet<>();
strings.add("Tom");
strings.add("Ann");
strings.add("Jack");
strings.add("Tom");
strings.add("Kate");
String[] s = strings.stream()
.distinct()
.filter(str -> str.length() == 3)
.sorted()
.toArray(String[]::new);
Подписаться
👍2
Что будет выведено?
Anonymous Poll
8%
Ann, Tom, Tom
59%
Ann, Tom
25%
Ничего
6%
Compilation error
3%
RuntimeException
❤2👍2
Элеста
Что вернет метод?
Прислать задачу | Подписаться
Что вернет метод?
public static int test(){
try {
int g = 3 / 1;
return 1;
} catch (ArithmeticException ae) {
return 2;
} finally {
return 3;
}
}
Прислать задачу | Подписаться
🤔5👍4
Сбер
#sber | Прислать задачу | Подписаться
Написать программу для подсчета слов в строке
пример ввода:Парус Порвали Парус
Вывод:
Парус-2
Порвали-1
#sber | Прислать задачу | Подписаться
👍2
Альфа банк
#alfabank | Прислать задачу | Подписаться
/* Напиши метод, который принимает на вход целое число n, которое является верхней границей диапазона 0..n и возвращает Map в которой ключи все числа из этого диапазона а значения по ключу
- список целых делителей ключа.
Пример:
n = 6.
out = {
1-[1]
2-[1,2]
3-[1,3]
4-[1,2,4]
5-[1,5]
6-[1,2,3,6]
}
*/
Map<Integer, List<Integer>> getDivisorsMap(Integer n){
// Реализация метода
}
#alfabank | Прислать задачу | Подписаться
👍4🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Всех с окончанием рабочей недели)
#fridaymemes
😁24