每次方法运行时都无法清除ArrayList

时间:2018-10-22 17:20:00

标签: java android arraylist

public void incorrectlive() {
ArrayList<String> Wor = new ArrayList<>();
ArrayList<String> Def = new ArrayList<>();
    LinearLayout layout = (LinearLayout) findViewById(R.id.WW);

    Scanner sc, sc2;
    int count = 0;
    try {
        Wor.clear();
        Def.clear();
        sc = new Scanner(openFileInput("w.txt"));
        sc2 = new Scanner(openFileInput("d.txt"));
        while (sc.hasNextLine() && sc2.hasNextLine()) {
            Q = sc.nextLine();
            Wor.add(Q);
            D = sc2.nextLine();
            Def.add(D);
            count++;
        }
        sc.close();
        sc2.close();


    } catch (Exception e) {
        Toast.makeText(this, "error", Toast.LENGTH_LONG).show();
    }

    for (int i = 0; i < count; i++) {
        String wr = Wor.get(i);
        String dr = Def.get(i);
        addword(wr, dr, layout);
    }
}

我希望每次运行Wor时都清除Defincorrectlive()的内容,但是没有发生。 Catlog中没有错误,它只会继续添加会导致重复的较旧错误

2 个答案:

答案 0 :(得分:0)

尝试放置您的clear(); try / catch块之外的方法...

根据调用此方法的上下文,您的程序也可能会出现逻辑错误。使用 static 关键字的任何内容都可能导致某些问题。

答案 1 :(得分:0)

所以我找到了解决方案...问题在于使用的文件...所以我使用PrintStream刷新了它们。感谢您的支持