Не насправді те саме. Карти - це підмножина словника. Словник визначається тут як наявність вставки, видалення і пошуку функцій. Карта, якою користується Java (відповідно до цього ), є словником з вимогою, щоб ключі, які відображають значення, суворо відображалися як функція "один на один". У словнику може бути більше однієї ключової карти на одне значення або одна ключова карта з кількома значеннями (наприклад, ланцюжком в таблицю переходів), наприклад, пошук хештегів у Twitter.
Як більш "реальний" приклад, пошук слова в словнику може дати нам ряд визначень для того ж слова, і коли ми знайдемо запис, який вказує нам на інший запис (див. Інше слово), кількість слів для того ж списку визначень. У реальному світі карти набагато ширші, що дозволяє нам розміщувати місця для імен чи імен для координат, але також ми можемо знайти найближчого сусіда чи інші атрибути (популяції тощо), тому ІМХО може бути аргументом для більшого розширення тип карти, щоб, можливо, були виконані на основі графіків, але найкраще завжди вважати лише парами ключ-значення, тим більше, що найближчий сусід та інші атрибути до значення можуть бути лише членами даних значення.
Java-карти, незважаючи на вимогу "один на один", можуть реалізувати щось більше, як узагальнений словник, якщо значення узагальнено як саму колекцію або якщо значення є лише посиланнями на колекції, що зберігаються в іншому місці.
Пам’ятайте, що Java-сервіси - це не підтримувачі визначення ADT, а рішення Java - спеціально для Java.