java题,,,,,,,,

题目2:编写“背单词”程序,系统从词库中随机抽取英文单词,通过一个标签组件显示对应的中文,让用户在文本组件中输入英文单词。如果用户输入的英文单词出错,按【Enter】健后,系统在另一个标签组件中显示“对不起!答错了!”,直到用户输入正确英文单词,按【Enter】后,系统显示“恭喜你!答对了!”。该过程可以连续进行,直到用户结束程序。

如有帮助望采纳

        List<String> words = new ArrayList<>();
        List<String> chinese = new ArrayList<>();
        BufferedReader br = new BufferedReader(new FileReader("E://data.word"));
        String s = null;
        while ((s = br.readLine()) != null) {
            words.add(s.split("-")[0]);
            chinese.add(s.split("-")[1]);
        }
        br.close();
        Random ra = new Random();
        Scanner sc = new Scanner(System.in);
        boolean flag = true;

        while (flag) {
            int i = ra.nextInt(words.size());
            while(true) {
                System.err.println("根据中文提示请输入译文:" + chinese.get(i));
                String next = sc.next();
                if (next.equals("exit")) {
                    flag = false;
                    break;
                }
                if (next.equals(words.get(i))) {
                    System.out.println("回答正确");
                    break;
                }else {
                    System.out.println("回答错误");
                    continue;
                }
            }
        }

img