用json-lib 处理数据时发现一个有趣的问题?
下面的程序将输出:
aa :: null
bb :: false
cc :: false
dd :: false
null != null ? 那他到底是什么呢?
[code="java"]package com.xy51wan.bean;
import net.sf.json.JSONObject;
public class Basic_Action_Bean {
private String action;
private JSONObject parameters;
public Basic_Action_Bean(String json) {
JSONObject jo = JSONObject.fromObject(json);
action = jo.getString("action");
//if (jo.get("parameters") != null) {
parameters = JSONObject.fromObject(jo.get("parameters"));
//}
jo = null;
}
public String getAction() {
return action;
}
public void setAction(String action) {
this.action = action;
}
public JSONObject getParameters() {
return parameters;
}
public Object getParameter(String key){
if(parameters != null){
System.out.println("aa :: " + parameters);
System.out.println("bb :: " + parameters.equals("null"));
System.out.println("cc :: " + (parameters == null));
System.out.println("dd :: " + (parameters.equals(null)));
}
return null;
}
public static void main(String args[]){
//Basic_Action_Bean b = new Basic_Action_Bean("{\"action\":\"getAA\",\"parameters\":{\"a\":100,\"b\":\"2009-04-07\"}}");
Basic_Action_Bean b = new Basic_Action_Bean("{\"action\":\"getAA\"}");
b.getParameter("a");
}
}
[/code]
[b]问题补充:[/b]
用json-lib 处理数据时发现一个有趣的问题?
下面的程序将输出:
aa :: null
bb :: false
cc :: false
dd :: false
null != null ? 那他到底是什么呢?
[code="java"]import net.sf.json.JSONObject;
public class Basic_Action_Bean {
private String action;
private JSONObject parameters;
public Basic_Action_Bean(String json) {
JSONObject jo = JSONObject.fromObject(json);
action = jo.getString("action");
//if (jo.get("parameters") != null) {
parameters = JSONObject.fromObject(jo.get("parameters"));
//}
jo = null;
}
public String getAction() {
return action;
}
public void setAction(String action) {
this.action = action;
}
public JSONObject getParameters() {
return parameters;
}
public Object getParameter(String key){
if(parameters != null){
System.out.println("aa :: " + parameters);
System.out.println("bb :: " + parameters.equals("null"));
System.out.println("cc :: " + (parameters == null));
System.out.println("dd :: " + (parameters.equals(null)));
}
return null;
}
public static void main(String args[]){
//Basic_Action_Bean b = new Basic_Action_Bean("{\"action\":\"getAA\",\"parameters\":{\"a\":100,\"b\":\"2009-04-07\"}}");
Basic_Action_Bean b = new Basic_Action_Bean("{\"action\":\"getAA\"}");
b.getParameter("a");
}
}
[/code]