Страница 1 из 1
Работа с HashMap
Добавлено: 14 ноя 2013, 14:06
Isaev
Нужно как-то хранить табличку значений String - Int
при чём с возможностью получения массива String[] и Int[] отдельно
делаю допустим так:
Код: Выделить всё
HashMap<String, Integer> arr = new HashMap<String, Integer>();
arr.put("one", 1);
arr.put("two", 2);
arr.put("three", 3);
как тогда получать эти 2 массива по отдельности? Ну естественно, чтобы не оббегать весь список в цикле и не строить массив.
Пробовал так же TreeMap, но там тоже ничего не нашёл... может надо иначе подойти к проблемме?
Re: Работа с HashMap
Добавлено: 14 ноя 2013, 14:14
rezak90
учи Java
![Подмигивает ;)](./images/smilies/icon_e_wink.gif)
, не зная как работают коллекции даже в junior'ы не берут
Re: Работа с HashMap
Добавлено: 14 ноя 2013, 14:25
trew
Isaev писал(а):при чём с возможностью получения массива String[] и Int[] отдельно
Так может создать два массива?
![Улыбается :)](./images/smilies/icon_e_smile.gif)
Если они одинаковой длины, индексы будут совпадать для "one" и для "1".
("one", 1);
Re: Работа с HashMap
Добавлено: 14 ноя 2013, 15:12
Isaev
trew писал(а):Так может создать два массива?
![Улыбается :)](./images/smilies/icon_e_smile.gif)
хотелось бы оба вернуть как результат функции
а там только 1 значение возвращается)
может сделать 1 двухмерный String [2][]? Int только придётся конвертнуть
я думал почему-то, что из коллекции должно быть просто вернуть столбик отдельно, вот на основе их и начал
Re: Работа с HashMap
Добавлено: 14 ноя 2013, 15:16
trew
Создай метод, который будет возвращать два значения.
Re: Работа с HashMap
Добавлено: 14 ноя 2013, 15:18
Isaev
они оба берутся из одного места, быстро читаются парой
делать 2 метода и в обоих их отдельно искать? не красиво
или как можно вернуть 2 значения одним методом? это наверное то, чего я не знаю пока в яве
я в общем и вернул HashMap, только как из него на 2 массива разделить думаю теперь
rezak90 писал(а):учи Java
![Подмигивает ;)](./images/smilies/icon_e_wink.gif)
, не зная как работают коллекции даже в junior'ы не берут
так я и учу) налету... подскажи, дорый человек, коли знаешь)
Re: Работа с HashMap
Добавлено: 14 ноя 2013, 15:43
trew
На вход метода подаешь индекс позиции, или String и int.(это от твоей задачи зависит)
А на выходе получаешь HashMap.
Re: Работа с HashMap
Добавлено: 15 ноя 2013, 10:13
Isaev
trew писал(а):На вход метода подаешь индекс позиции, или String и int.(это от твоей задачи зависит)
А на выходе получаешь HashMap.
так HashMap я уже получил, надо назад его разделить
Re: Работа с HashMap
Добавлено: 15 ноя 2013, 10:43
Isaev
Я, возможно, изначально не на правильном пути...
Суть в следующем, есть в активити настроек следующий элемент:
Код: Выделить всё
ListPreference list = new ListPreference(this);
list.setKey("list");
list.setTitle("List");
list.setSummary("Description of list");
list.setEntries(R.array.entries);
list.setEntryValues(R.array.entry_values);
rootScreen.addPreference(list);
вот вместо этих двух массивов из ресурсов, получаю их из бд и заполняю
может это можно сделать без танцев с бубуном?
Re: Работа с HashMap
Добавлено: 15 ноя 2013, 12:04
Mikhail_dev
Я бы сделал маленький класс для всех этих параметров. Взял бы потом какой-то параметр за ключ и запихнул бы в Map ключ, а значение сам объект. Или списком бы сделал. Тут уже как вашей душе угодно.