2017-02-18 55 views
0

我想将存储在JsonPost字符串数组中的每个帖子放入具有不同名称的Object中。我试过的代码如下。如何将不同名称的字符串放入Object with for循环

String[] JsonPost = request.getParameterValues("post[]"); 

    BasicDBObject postObj = new BasicDBObject(); 
     for(String str : JsonPost){ 

     postObj.put(str, str); 

     } 
    System.out.println(postObj); 

例如,如果JsonPost = [ “苹果”, “橙色”]

我得到输出如下。

{ "Apple" : [ "Apple"] , "Orange" : [ "Apple" , "Orange"]} 

但我想得到如下输出。

{ "Apple" : [ "Apple"] , "Orange" : ["Orange"]} 

plese帮我解决了这个问题。

+1

你可以发布你的BasicDBObject类吗?问题可能存在。另外,作为一个方面说明,java变量名通常是小写字母,所以最好将“JsonPost”改为“jsonPost”以避免与类名混淆。 – deathyr

+0

BasicDBObject是一个在MongoDB中使用的对象。只要将其视为一个对象即可。 –

回答

0

则可能是您的jsonPost对象的问题,我只是尝试这样做:

String[] jsonPost = new String[] { "Apple", "Orange" }; 

    BasicDBObject postObj = new BasicDBObject(); 
    for (String str : jsonPost) { 

     postObj.put(str, str); 

    } 
    System.out.println(postObj); 

输出功率为:

{ "Apple" : "Apple" , "Orange" : "Orange"} 

能否打印jsonPost?

+0

是的,我可以打印jsonPost。但在我的情况下,我分配了request.getParameterValues(“post []”);通过捕获请求。我很困惑新的String [] {“Apple”,“Orange”};请帮帮我。 –