В чем разница между доступом к полю документа через .value / .values ​​или нет в безболезненном скрипте? - PullRequest
1 голос
/ 12 октября 2019

Предположим, что у меня есть поле отображения документа, как показано ниже

{
    "template": {
        "mappings":{
            "template":{
                "properties": {
                    "sth": {
                        "type": "long"
                    }
                }
            }
        }
    }
}

Поле sth является типом массива.

Я хочу проверить, содержит ли поле sth значение или нетПоэтому я пишу безболезненный сценарий, как doc['sth'].values.contains((long)1)

Это работает. Однако, если я напишу doc['sth'].contains((long)1), получая доступ к полю не через .values, это также может сработать.

Я также попробовал какой-нибудь метод экземпляра, например isEmpty(), size(), оба могут работать независимочерез .values или нет.

Итак, в чем разница между доступом к полю документа через .value / .values ​​или без него в безболезненном сценарии? Что безболезненно делать под капотом?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...