Есть ли Java-версия создания массива словарей как в Swift - PullRequest
0 голосов
/ 01 июня 2018

В Swift я могу написать словарь, подобный этому:

let myDict = [
    [
        "title": "some title",
        "val": "some val",
        "url": "some url"
    ],
[
        "title": "some title",
        "val": "some val",
        "url": "some url"
    ],
]

Существует ли версия Android для Android?

Ответы [ 3 ]

0 голосов
/ 01 июня 2018

Утилита импорта:

import java.util.HashMap;

И тогда вы можете использовать Map.Первая строка объявляет пустую переменную с типом HashMap, а две следующие строки добавляют данные в нее.

Map vehicles = new HashMap();
vehicles.put("BMW", 5);
vehicles.put("Mercedes", 3);

Как упоминалось @ Code-Apprentice.Вам необходимо импортировать необходимую утилиту.

0 голосов
/ 02 июня 2018

В Java нет буквального словаря, комбинация, которую вы ищете - List<Map<String, String>> И List, и Map - это интерфейсы, поэтому их нельзя напрямую создать.В вашем случае конкретные классы для них различны, но либо ArrayList, либо LinkedList для List и HashMap для Map.

Вы можете получить что-то неопределенно похожее с анонимными классами:

List<Map<String, String>> myDict = new ArrayList<Map<String, String>>() {{
    add(new HashMap<String, String>() {{
        put("title", "some title");
    }});
}}
0 голосов
/ 01 июня 2018

В Java словарь, определенный интерфейсом java.util.Map.Наиболее распространенная реализация - java.util.HashMap.Список определяется java.util.List и реализуется java.util.ArrayList.Вы можете комбинировать их любым способом.Я предлагаю вам прочитать об API Коллекций, чтобы узнать обо всех структурах данных, доступных в Java.

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