У меня есть метод, который ставит значение в HashMap типа HashMap<String, Object[]>
& возвращает тот же HashMap.Получить элементы массива из HashMap в Java
Код для ввода значения в HashMap:
doc = Jsoup.connect(url).get();
for(org.jsoup.nodes.Element element : doc.getAllElements())
{
for(Attribute attribute : element.attributes())
{
String option_ID=element.tagName()+"_"+attribute.getKey()+"_"+attribute.getValue();
String HTMLText=element.text();
int HTMLTextSize=HTMLText.length();
if(!HTMLText.isEmpty())
data.put("Test"+i,new Object[{"Test"+i,option_ID,HTMLText,HTMLTextSize});//adding value in HashMap.
i++;
}
}
Я попытался итерации, как показано ниже, я думаю, это не правильный путь:
HashMap<String, Object[]>set=HTMLDocument.createHTMLSet("URL of website");
Iterator it = set.entrySet().iterator();
while (it.hasNext()) {
Map.Entry pair = (Map.Entry)it.next();
System.out.println(pair.getKey() + " = " + pair.getValue());
}
Как я получаю результат, как:
Испытание79 = [Ljava.lang.Object; @ 14e1a0f
Test378 = [Ljava.lang.Object; @ 1a5f880
Как я должен перебрать эту HashMap, чтобы получить Object [] значения, такие как option_id, HTMLText?
Вы должны знать тип объекта итерацию. – Shriram
Значение - * массив * объектов Object. – Maroun
@Shriram: Я создаю этот объект как «новый объект [] {« Test »+ i, option_ID, HTMLText, HTMLTextSize}' где, ID & Text - строка и TextSize имеет тип int. – MKay