Sobes.tech
Senior

//otomobil plakası listesi, plakalar her zaman aynı standart tiptedir // her numarayı ayrı ayrı konsola yazdır // sonra numara - rakamlar haritası yap (örnek A123BC:123) burada anahtar A123BC ve değer 123 //var autoNumbers = List.of(List.of("A123BC", "B421FT"), List.of("O543EC","B421FT", "I2220A"));

sobes.tech yapay zeka

AI'dan gelen yanıt

Для решения задачи на Java можно использовать следующий подход:

  1. Пройтись по вложенным спискам и вывести каждый номер в консоль.
  2. Создать Map, где ключ — номер автомобиля, а значение — строка с цифрами из номера.

Пример кода:

import java.util.*;
import java.util.stream.*;

public class AutoNumbers {
    public static void main(String[] args) {
        var autoNumbers = List.of(
            List.of("A123BC", "B421FT"),
            List.of("O543EC", "B421FT", "I2220A")
        );

        // Выводим каждый номер в консоль
        autoNumbers.stream()
            .flatMap(Collection::stream)
            .forEach(System.out::println);

        // Создаем карту номер -> цифры
        Map<String, String> numberToDigits = autoNumbers.stream()
            .flatMap(Collection::stream)
            .distinct() // чтобы не дублировать ключи
            .collect(Collectors.toMap(
                number -> number,
                number -> number.replaceAll("[^0-9]", "")
            ));

        // Пример вывода карты
        numberToDigits.forEach((key, value) -> System.out.println(key + ":" + value));
    }
}

В этом примере:

  • Используется flatMap для объединения вложенных списков в один поток.
  • Метод replaceAll("[^0-9]", "") извлекает только цифры из строки.
  • distinct() убирает повторяющиеся номера, чтобы ключи в Map были уникальными.