从一个文件获取整数列表

时间:2017-09-08 05:31:38

标签: java string list integer contain

此脚本检查配置文件中的技能,并允许仅使用它们(以便停止黑客攻击)。

以下是我的脚本如何工作的过程:

#1 此技能列表中有一个特殊的.ini配置文件:

CommunityAvailableBuffs = 11517,11522;

#2 文件config.java从配置文件中获取一个列表并转换为整数:

public static List<Integer> COMMUNITY_AVAILABLE_BUFFS;

final String[] allowedBuffs = 
CommunityBoard.getString("CommunityAvailableBuffs", "").split(",");
COMMUNITY_AVAILABLE_BUFFS = new ArrayList<>(allowedBuffs.length);
    for (String s : allowedBuffs)
    {
        COMMUNITY_AVAILABLE_BUFFS.add(Integer.parseInt(s));
    }

#3 文件HomeBoard.java从config.java文件中获取此列表,并检查此列表中的技能。

if (!Config.COMMUNITY_AVAILABLE_BUFFS.contains(skill.getId()))
{
    continue;
}

我的问题是如何在不使用config和config.java文件的情况下直接在HomeBoard.java文件中粘贴技能列表,我尝试使用这样的东西:

List<Integer> allallowedBuffs = "11517,11522";
final String[] allowedBuffs = CommunityBoard.getString(allallowedBuffs, "").split(",");
allallowedBuffs = new ArrayList<>(allowedBuffs.length);
for (String s : allowedBuffs)
{
    allallowedBuffs.add(Integer.parseInt(s));
}

if (!allowedBuffsend.contains(skill.getId()))
{
    continue;
}

但不幸的是,它没有用。

2 个答案:

答案 0 :(得分:2)

如果我正确理解了您的问题,您只需使用以下行来填充allallowedBuffs一些硬编码数据。

List<Integer> allallowedBuffs = Arrays.asList(11517,11522);

答案 1 :(得分:1)

试试这个,如果它是Java8

List<Integer> allallowedBuffs = List.of(11517, 11522);