Почему этот код Java возвращает адрес памяти? [Дубликат]

Вам не нужно использовать для извлечения документа сначала, просто используйте метод .update с оператором $push .

def update_tags(ref, new_tag):
    coll.update({'ref': ref}, {'$push': {'tags': new_tag}})

Поскольку обновление устарело вы должны использовать метод find_one_and_update или update_one , если вы используете pymongo 2.9 или новее

-2
задан shadowmaster4171 15 January 2019 в 22:50
поделиться

1 ответ

Это toString массива. См. Object.toString, в котором будет сказано, что реализация по умолчанию возвращает эквивалент

getClass().getName() + '@' + Integer.toHexString(hashCode())

Class.getName, объясняющий свою часть.

Object.hashCode расскажет вам больше о номере. Как правило, он будет получен из адреса памяти объекта во время первого вызова. Вероятно, это не фактический адрес памяти, поскольку младшие биты обычно равны нулю, а JVM склонны перемещать объекты в памяти как часть сборки мусора.

Статический метод java.util.Arrays.toString или deepToString даст вам нечто более разумное.

0
ответ дан Tom Hawtin - tackline 15 January 2019 в 22:50
поделиться
Другие вопросы по тегам:

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