java(android)从头开始创建JSONObject

时间:2011-10-31 23:11:19

标签: java android eclipse

我正在尝试做类似的事情:

public static final JSONObject MYOBJ = new JSONObject().put("value", "expression");

但eclipse发疯了并说即使工具提示显示No solutions available

,该行也会出错

我已尝试将JSONObject更改为String,但问题仍然存在。我正在回避哈希地图,并且非常想使用JSON。

**编辑 - 代码位置**

package ...

import ...

public class MyActivity extends Activity {
    public static final JSONObject MYOBJ = new JSONObject().put("value", "expression");

    ... // onCreate etc
}

2 个答案:

答案 0 :(得分:6)

似乎JSONObject有一个必须处理的已检查异常。试试这个

public static final JSONObject MYOBJ = new JSONObject(){
    {
        try {
            put("value", "expression");
        } catch(Exception e){
            e.printStackTrace();
        }
    }
};

答案 1 :(得分:2)

put()的结果是一个Object。 做两行,一切都很好。

public static final JSONObject MYOBJ = new JSONObject();
static {
  MYOBJ.put("value", "expression");
}

请注意,静态final不会阻止对象被更改,只是原始引用MYOBJ将始终是同一个对象。

编辑: 啊,我可能使用了不同风格的JSON库。尽管如此,上述方法可能会很好地工作。如果所有类型都匹配,请在原始行中添加一些parens。