Java, эквивалентный словарям Python

Если Вы просто хотите, чтобы что-то короче ввело, вот две опции. Во-первых, можно импортировать java.lang. Система как что-либо Вам нравится, конкретно что-то короче как "sys":

import java.lang.System as sys
sys.err.println("ERROR Will Robinson")
113-секундный, можно присвоить поток System.err переменной и использованию что переменная с тех пор как псевдоним для System.err, как:

err = System.err
err.println("ERROR again Will Robinson")

Это имеет возможное преимущество, что все функции System.err доступны, таким образом, Вы не должны обеспечивать электричеством каждого индивидуально (например, err.print, err.println, и т.д.).

, Надо надеяться, существует стандартный Groovy путь, потому что особенное переименование может сбивать с толку людей, которые прочитали Ваш код.

83
задан slimbo 8 October 2009 в 21:44
поделиться

3 ответа

Класс Python dict - это реализация того, что в документации Python неофициально называется « типы отображения ». Внутри dict реализована с использованием хэш-таблицы.

Класс Java HashMap является реализацией интерфейса Map . Внутри HashMap реализован с использованием хэш-таблицы.

Есть несколько незначительных отличий в синтаксисе, и я считаю, что реализации настроены немного иначе, но в целом они полностью взаимозаменяемы.

95
ответ дан 24 November 2019 в 08:54
поделиться

Одно различие между ними состоит в том, что dict предъявляет более строгие требования к тому, какие типы данных могут действовать как ключ. Java позволяет любому объекту работать как ключ, хотя вы должны позаботиться о том, чтобы метод объекта hashCode () возвращал уникальное значение, отражающее его внутреннее состояние. Python требует, чтобы ключи соответствовали его определению hashable , которое указывает, что хэш-код объекта никогда не должен изменяться в течение его времени существования.

5
ответ дан 24 November 2019 в 08:54
поделиться

Насколько мне известно (я фактически не использую java), словари - это просто другое имя для хэш-карты / хэш-таблицы.

Получение кода из http: // www.fluffycat.com/Java/HashMaps/ кажется, что они используются очень похожим образом, с небольшим количеством дополнительных шаблонов java.

4
ответ дан 24 November 2019 в 08:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: