如何在向数组添加数据时删除括号

时间:2015-12-10 16:07:06

标签: java arrays hashmap

我是Java新手。我想要一些建议如何在将数据数组放入HashMap时剪切括号,我正在从Xml文件中解析。 这是我的一段代码 - >>>

final List<String> ITEMS = new ArrayList<String>();
final List<String> URLS = new ArrayList<String>();
final HashMap urls = new HashMap();

   NodeList nList = doc.getElementsByTagName("Row");                        
   for (int z=0; z<nList.getLength(); z++) {
        Node nNode = nList.item(z);
        Element eElement = (Element) nNode; 

        NodeList a = eElement.getElementsByTagName("item");
        for (int i=0; i<a.getLength(); i++) {               
            ITEMS.clear();
            URLS.clear();
            urls.clear();
            String b = eElement.getElementsByTagName("item").item(i).getTextContent();
            String c = eElement.getElementsByTagName("url").item(i).getTextContent();
            ITEMS.add(b);
            URLS.add(c);

            urls.put(ITEMS, URLS);
            System.out.println(urls);                               
            }
        }

现在我有了key = value对。

这个的输出是:

{[Select product]=[bla-bla-bla]}
{[Single Landmine Shirt]=[http://www.sample.com/landmine-single-shirt]}
{[Women's Silver & Black Bar]=[http://www.sample.com/womens-silver-and-black-bar]}
{[High Density Foam Rollers]=[http://www.sample.com/high-density-foam-rollers]}
{[Sling Shot Hogan Wraps]=[http://www.sample.com/sling-shot-hogan-wraps]}
{[Heavy Duty Multi Grip Bar MG-1 - Closeout]=[http://www.sample.com/heavy-duty-multi-grip-bar-mg-1]}

我的目标是通过相应的键(产品名称)打印值(Url)。 问题是:当我进一步尝试将HashMap中的任何键与String项目(我在d-down列表中得到的产品名称)进行比较时 - 我有一个不匹配的问题。 我确定这是因为方括号 - 存储在HashMap中。

请建议如何从我的网址

中删除方括号。

我希望这个HashMap看起来像这样:

{Select product = bla-bla-bla}
{Single Landmine Shirt = http://www.sample.com/landmine-single-shirt}
{Women's Silver & Black Bar = http://www.sample.com/womens-silver-and-black-bar}
etc.

对任何建议都会很满意。 谢谢

2 个答案:

答案 0 :(得分:2)

更好地格式化自己

声明:

final HashMap<String,String> urls_corrects = new HashMap<String,String>();

在循环中执行此操作:

 urls_corrects.put(b,c);

像这样打印:

for (String one_item:urls_corrects.keySet())
                System.out.println("{"+one_item+" = "+urls_corrects.get(one_item)+"}"); 

答案 1 :(得分:1)

简单替换 urls.put(ITEMS,URLS); 通过 urls.put(A,B);

因为您将地图中的键和值设为List。所以它会打印[]。