реализация get метода в Hashmap

253
14 июля 2017, 03:46

Есть такой Hashmap

public class PjColorImages {
    Map<String, PjColorImagesMain> properties_main=new HashMap<>();
    @JsonAnyGetter
    public Map<String, PjColorImagesMain> getAny() {
        return properties_main;
    }
    @JsonAnySetter
    public void set(String name, PjColorImagesMain value) {
        properties_main.put(name, value);
    }
    @Override
    public String toString() {
        return properties_main.toString() ;
    }

Который работает в связке с этим классом

public class PjColorImagesMain {
    private String type,title,big,average,small,micro;
    public String getType() {
        return type;
    }
    public void setType(String type) {
        this.type = type;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
    public String getBig() {
        return big;
    }
    public void setBig(String big) {
        this.big = big;
    }
    public String getAverage() {
        return average;
    }
    public void setAverage(String average) {
        this.average = average;
    }
    public String getSmall() {
        return small;
    }
    public void setSmall(String small) {
        this.small = small;
    }
    public String getMicro() {
        return micro;
    }
    public void setMicro(String micro) {
        this.micro = micro;
    }
    @Override
    public String toString() {
        return "{" +
                "type='" + type + '\'' +
                ", title='" + title + '\'' +
                ", big='" + big + '\'' +
                ", average='" + average + '\'' +
                ", small='" + small + '\'' +
                ", micro='" + micro + '\'' +
                '}';
    }

И конечная часть где мне нужно достать из предыдущего класса getBig()

for(PjMainData pjMainData:pjMain.getData()) {
    String photo=pjMainData.getColor().getImages().getAny().\\getBig();\\???
    Log.d(TAG,photo);
}

Как правильно реализовать данный этап?

Answer 1

HashMap это коллекция, в которой хранятся элементы. Их может быть ноль, один или несколько. Определитесь, какой именно элемент вам нужен, достаньте его из коллекции (например, по ключу get("key")) и уже у конкретного элемента вызывайте getBig():

for (PjMainData pjMainData : pjMain.getData()) {
    String photo = pjMainData.getColor().getImages().getAny().get("someKey").getBig();
    Log.d(TAG,photo);
}
READ ALSO
JavaFX проблемы со scene

JavaFX проблемы со scene

У меня уже есть запущенный stage и scene, если я заменю сцену на другую, то подцепится ли она сразу же в классе контроллер?

398
Как проверить наличие текста в EditText?

Как проверить наличие текста в EditText?

Есть два EditText и кнопка отправки с методом onClick()При нажатии на кнопку в методе срабатывает код отправки данных из полей на сервер

472
Копирование снимка с камеры

Копирование снимка с камеры

Пытаюсь написать приложение которое, находясь в фоновом режиме, копировало бы в свою папку фото, сделанные штатным приложением и потом обрабатывало...

212
Отправка изображения на сайт

Отправка изображения на сайт

Я относительно недавно начал изучать програмирование под андроидПо этому у меня возник вопрос: как происходит вигрузка изображений на сайт...

241