gpt4 book ai didi

java - 使用 JSONObject Java 类的静态 getNames 方法时 Eclipse 中的语法错误

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:56:50 26 4
gpt4 key购买 nike

我正在尝试返回已提供给 JSONObject 类的所有名称(例如,它们自己的数组中的所有键,没有它们的关联值)。我的代码目前如下:

String names[] = new String[10];
names = JSONObject.getNames(jsonObj);

我试图从中获取数组的方法是这样的:

public static String[] getNames(JSONObject jo) {
int length = jo.length();
if (length == 0) {
return null;
}
Iterator iterator = jo.keys();
String[] names = new String[length];
int i = 0;
while (iterator.hasNext()) {
names[i] = (String)iterator.next();
i += 1;
}
return names;
}

这是我遇到的错误:

The method getNames(JSONObject) is undefined for the type JSONObject

但是,如果我将我的代码设置为故意返回并将其分配给错误类型的变量:

int inames = JSONObject.getNames(jsonObj);

突出显示上面那行的 JSONObject 部分或 jsonObj 参数会导致 Eclipse 显示以下错误:

Type mismatch: cannot convert from String[] to int

而突出显示 getNames 方法仍然会提供与之前相同的错误。

我能从中获得什么? Eclipse 似乎知道该方法在那里,因为它知道其正确的返回类型,但它声称该方法在类中未定义。

最佳答案

getNames 方法似乎不是 JSONObject 的静态方法。我对吗?

在哪个类里面声明的?

如果它是 X 类,你应该这样做:

X.getNames(jsonObj);

关于java - 使用 JSONObject Java 类的静态 getNames 方法时 Eclipse 中的语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11343303/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com