gpt4 book ai didi

java - 如何从 Java/Android 中的另一个类获取 ArrayList 中存储的数据?

转载 作者:行者123 更新时间:2023-12-02 03:57:04 26 4
gpt4 key购买 nike

我是 Java/Android 新手,我正在尝试做一件事,但我不确定我是否能做到。

我的问题是这样的:我正在解析一个 Json 并将这个 json 发送到我的类(class)。一切正确,json 有效并且数据存储正确。我想做的是从另一个类访问我存储在 arrayList 中的数据,但我不知道该怎么做。

我尝试实现一个单例 java 类,但无法访问数据。

我说的是举例。如果我创建此方法,我可以访问数据,但我需要将数据从 json 传递到该方法。

 public String showOverlay(ArrayList<ScreenEvent> config){
String show = "";
String empty = "empty";
for(ScreenEvent client : config){
show = client.action;

if(show.equals("show"))
return show;
}
return empty;
}

我不想这样做。我希望能够在我的方法中创建 arrayList 的对象:

 public String myMethod(){

//I want access here to the data of the arrayList

return empty;
}

我读取了 json 并将数据传递到 ArrayList 中:

    public static ArrayList<VsClientConfig.ScreenEvent> eventConfig = new ArrayList<VsClientConfig.ScreenEvent>();

//JSON stuff
VsClientConfig.ScreenEvent vs = VsClientConfig.ScreenEvent.getScreenEvent(action, className, typeEvent, viewId, colourEvent);
eventConfig.add(vs);

这是我的课:

public class VsClientConfig{

public String colour;
public String height;

public static class ScreenEvent {
public String action;
public String className;
public String typeEvent;
public String viewId;
public String colourEvent;
private static ScreenEvent miScreenEvent;

public static ScreenEvent getScreenEvent(String action, String className, String typeEvent, String viewId, String colourEvent) {

if (miScreenEvent == null) {

miScreenEvent = new ScreenEvent(action, className, typeEvent, viewId, colourEvent);
}
return miScreenEvent;
}

private ScreenEvent(String action, String className, String typeEvent, String viewId, String colourEvent) {
this.action = action;
this.className = className;
this.typeEvent = typeEvent;
this.viewId = viewId;
this.colourEvent = colourEvent;
}

}

public String myMethod(){

//I want access here to the data of the arrayList

return empty;
}
...

最佳答案

在 Common 类中创建并初始化静态 arrayList,如下所示:

public class Common{
public static ArrayList<VsClientConfig.ScreenEvent> eventConfig=new ArrayList<>();
}

并从您想要的任何地方分配 if:

//JSON stuff
VsClientConfig.ScreenEvent vs = VsClientConfig.ScreenEvent.getScreenEvent(action, className, typeEvent, viewId, colourEvent);
Common.eventConfig.add(vs);

现在Common.eventConfig(您的arrayList)将可以通过您的应用程序访问

关于java - 如何从 Java/Android 中的另一个类获取 ArrayList 中存储的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35339031/

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