2013-06-02 42 views
0

{ 「ID」:56754}使用的getString整數

對於上述JSON,如果我使用jsonResp.getString( 「ID」),它工作得很好,它也適用於jsonResp.getInt( 「ID」 )。

這是否意味着getString就像所有特定方法的父類一樣?

+0

你用什麼庫來解析JSON? – ArturSkowronski

回答

0

方法不繼承

這使合拍的Java類型層次

getStringgetInt是兩個完全不同的方法。我得到你想說的,沒有任何方法超載或者getInt也不會調用getString

由於是顯而易見的,getString返回StringgetInt返回int。因此56754在這裏可以是解釋爲作爲一個字符串或int。更重要的是,即使對getLonggetDouble也是如此。由於56754可以被視爲長或雙。

0

據源 - 不完全:

public String getString(String key) throws JSONException { 
    return get(key).toString(); 
} 

public int getInt(String key) throws JSONException { 
    Object o = get(key); 
    return o instanceof Number ? 
    ((Number)o).intValue() : (int)getDouble(key); 
} 

兩個這種方法的使用同樣的方法get,然後分析導致正確的方法。