2017-09-08 40 views
0

该脚本检查配置文件中的技能,并允许仅使用它们(为了停止黑客攻击)。从一个文件获取整数列表

这里是如何工作的过程我的脚本工作:

#1没有与此技能列表特殊的.ini配置文件:

CommunityAvailableBuffs = 11517,11522; 

#2文件配置。 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; 
} 

我的问题是如何直接在HomeBoard.java文件,而无需使用配置和config.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; 
} 

但不幸的是,它不起作用。

+1

什么是不工作? –

+0

'“11517,11522”'是一个字符串不是整数 –

+0

的列表是,控制台给了我这个错误: \t列表 allallowedBuffs =“11517,11522”; \t ^^^^^^^^^^^^^ 类型不匹配:无法将字符串转换为列表

回答

2

如果我正确理解你的问题,你可以简单地使用下面的行来填充allallowedBuffs与一些硬编码数据。

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

非常感谢,问题已解决! –

1

试试这个,如果是Java8

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