gpt4 book ai didi

java - ArrayList 中的 String[]

转载 作者:行者123 更新时间:2023-12-02 04:54:07 25 4
gpt4 key购买 nike

我最近开始开发一个应用程序,该应用程序向服务器发出请求并获取 json 响应。

这个“东西”运行得很好,直到我不得不在列表中实现新的东西,现在我很难修复它。

非常感谢任何帮助:

class RemoteConfig
{

// names and type must match what we get from the remote
String[] username;

ArrayList<accDetails> in_groups;

String[] in_groups_sorted;

class accDetails
{
int group_id;
String group_label;
Boolean _is_system;
}

这只是类启动的一部分,json 响应如下所示:

{  
"username":[
"mike"
],
"in_groups":[
{
"group_id":2,
"group_label":"All users",
"_is_system":true
},
{
"group_id":4372,
"group_label":"Privileged User",
"_is_system":false
},
{
"group_id":4979,
"group_label":"Supervisor",
"_is_system":false
}
]
}

我现在遇到的问题是,如果 _is_system 值为 false,我不知道如何拆分 in_groups 数组列表并进入 String[] in_groups_sorted Group_label 的值。

非常感谢任何帮助。

谢谢你,迈克

<小时/>

检查完回复后,最干净、最简单的是 Abbe 提供的:

public String[] groupSettings()
{
String[] levels = new String[] {};

if (remoteConfig != null && remoteConfig.in_groups != null){
for (accDetails ad: remoteConfig.in_groups)
{
if (!ad._is_system) {
levels = ArrayUtils.addAll(levels, ad.group_label); ;
}
}
}

return levels;
}

最佳答案

根据您的问题,我认为 JSON 已经解析并存储在 RemoteConfig 类的 in_groups 字段中。您只需过滤填充 in_group_sorted 字段所需的信息即可。

将以下内容添加到 RemoteConfig 类中:

public initGroupSorted() {
// Temporary list, since we don't know the size once filtered
List<String> labels = new ArrayList<>();
for (accDetails ad : in_groups) {
if (ad._is_system) {
groups.add(ad.group_label);
}
}
in_group_sorted = labels.toArray(new String[labels.size()]);
}

关于java - ArrayList<Class> 中的 String[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28944834/

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