有时,由于收集到的错误数据,通过以下方法生成的行在保存时最终看起来像这样:“,-1,0”或类似名称(无名称,ID为-1,级别为115或类似)其他。 (这些行的格式如下(不包括引号):“名称,id,级别”(例如:“荣誉卫士,5514,115”)
我需要做的是删除monstersToAdd中包含-1的所有字符串。
我已经尝试过了,但是没有成功:
private void combineInfo() {
for(int i = 0; i < monsterList.size(); i++){
monstersToAdd.add("" + names[i] + "," + IDs[i] + "," + levels[i]);
}
monstersToAdd.remove(monstersToAdd.contains("-1"));
}
用
monstersToAdd.remove(monstersToAdd.contains("-1"));
行,我试图删除monstersToAdd中包含“ -1”的所有字符串。但是,这可能不起作用,可能是出于很好的原因,我很遗憾还不知道。我真的很感激任何输入:)。
最佳答案
如果您甚至不添加它们,则比添加和删除它们更容易,因此在添加ID名称和级别之前要先检查它们的完整性
private void combineInfo() {
for(int i = 0; i < monsterList.size(); i++){
//add only if name is non empty, ID is not negative and level is below 100
if(!(names[i].isEmpty() || IDs[i]<0 || levels[i]>100))
monstersToAdd.add("" + names[i] + "," + IDs[i] + "," + levels[i]);
}