我在使用hasNext()
迭代器方法時遇到困難。我有一個JSONArray
:迭代器中的hasnext()未按預期工作
JSONArray = [{"a":1},{"b":2,"c":3}]
我在同一時間訪問一個JSONObject
。第一個JSONObject
中的JSONarray
有一個元素秒有兩個元素。問題是,當迭代器在第一個JSONObject
上檢查hasNext()
時,只有一個元素表示它是真實的,我的理解是隻有當它具有更多元素時,它纔會成立。請幫助並澄清這一點。
for (int i=0; i<JArrayLength; i++) {
JSONObject obj = newJArray.getJSONObject(i);
Iterator k = obj.keys();
System.out.println("Value k.hasnext is = " + k.hasNext());
if(k.hasNext())
{ //print somehting} // here its printing but as the value should be false it should not for i=0.
}
請建議我去哪裏錯了。
感謝您的回覆,但我無法獲得它。那麼我應該如何消費第一把鑰匙呢? k的值應該是no。在json對象中的鍵或它們的值,我試着打印k來檢查,但它給了-Value k is = [email protected] – user3712016
不,k的*值*是一個'Iterator'。底層數據結構中的項目數量不可見,因爲它可能是不確定的(遍歷網絡流)或無限(生成器)。 – chrylis
它不幫我多少,但確定,TX! ...我正在學習如此:) – user3712016