2016-07-11 1 views
0

У меня есть attrList, который содержит список атрибутов с их именем (ключом) и значением. Я хочу скопировать все их на Object[].Как преобразовать список атрибутов (например, карту) в Object []

Предлагаемые методы в конструкции attrList: getName(i), getValue(i) и size().

Как его преобразовать/скопировать?

Object[] result = new Object[attrList.size()]; 

for(int i=0; i < attrList.size(); i++) { 
     result[i] = ? 
} 

Заранее спасибо :)

ответ

0

Если вы уверены, что вы хотите поставить свой результат в Object [] Вы можете сделать это так:

Object[] result = new Object[attrList.size()]; 

for(int i=0; i < attrList.size(); i++) { 
    result[i] = new Object[]{attrList.getName(i), attrList.getValue(i)}; 
} 

Каждый элемент вашего объекта [ ] будет другим массивом Object, созданным двумя элементами. Но из этого будет трудно получить ключи и ценности.

Если вы хотите подходящий объект для хранения результата, вы можете использовать HashMap и поставить в каждом элементе ключ и значение вашего результата:

HashMap<Object, Object> result = new HashMap<Object, Object>(); 

for(int i=0; i < attrList.size(); i++) { 
    result.put(attrList.getName(i), attrList.getValue(i)); 
}