gpt4 book ai didi

java - Java调用常量时出错

转载 作者:行者123 更新时间:2023-12-01 17:25:06 25 4
gpt4 key购买 nike

我正在尝试在我的应用程序中解析 json:

所以首先我为我的 Android 应用程序创建了常量类,其中有大约 6 个用于 app.config 的变量:

(类别:1)

public class Constants{

// url to make request
public static String url = "http://server.com/";

// JSON Node names
public static final String TAG_CONTACTS = "contacts";
public static final String TAG_ID = "id";
public static final String TAG_NAME = "name";
public static final String TAG_EMAIL = "email";
public static final String TAG_ADDRESS = "address";
public static final String TAG_GENDER = "gender";

}

现在我想在不同的类中使用它,所以我继续创建不同的类:

(类别:2)

    public class ReadFiles{

public void readConstant(){
//appConfig is JSONArray
JSONArray appConfig = null;
// Creating JSON Parser instance
JSONParser jParser = new JSONParser();


// getting JSON string from URL
JSONObject json = jParser.getJSONFromUrl(c.url);

try {
// Getting Array of Contacts
contacts = json.getJSONArray(Constants.TAG_CONTACTS);

// looping through All Contacts
for(int i = 0; i < contacts.length(); i++){
JSONObject d = details.getJSONObject(i);

// Storing each json item in variable
String id = d.getString(Constants.TAG_ID); //Error:
//ERROR : The method getString(int) in the type JSONArray is not applicable for the arguments-(String)
String name = d.getString(Constants.TAG_NAME);
String email = d.getString(Constants.TAG_EMAIL);
String address = d.getString(Constants.TAG_ADDRESS);
String gender = d.getString(Constants.TAG_GENDER);

} catch (JSONException e) {
e.printStackTrace();
}
}

我在 block 上遇到错误:String name = c.getString(Constants.TAG_NAME); 我尝试通过解析 json 将常量值应用于局部变量。

我遵循了 eclipse 提示,也尝试了这样做

String name = c.(Constants.TAG_NAME);

但还是没有运气。这个 block 出了什么问题?如何将 json 值分配给局部变量?据您所知:这就是我想要实现的目标:android-json-parsing-tutorial但我想在单独的类(class)中保持不变。

更新:所以我按照您的建议进行了更改,但收到了新错误:
String tabTitle = appConfig.(ConfigConstants.TITLE); //Error: Syntax error on token ".", Identifier expected after this token

最佳答案

为什么不直接使用这个呢?

Constants.TAG_NAME

为什么要实例化您的Constants 类?由于 Constantsstatic 中的所有字段,仅需要以 static 方式访问它们(即)通过使用 >类名(常量)。

更新:-

appConfig.(ConfigConstants.TITLE);

难道不应该有一个方法吗?像这样的东西。

appConfig.someMethodName(ConfigConstants.TITLE);

关于java - Java调用常量时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15608862/

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