Java 如何停止嵌套循环添加序列

Java 如何停止嵌套循环添加序列,java,Java,我在Java代码中遇到了这个问题,我的嵌套循环总是在嵌套值中添加一个值,所以如果您请求再次显示一个输出,它将添加另一个输出 这是密码 case '2': System.out.print("Enter Subject: "); SB = buff.readLine(); File readSUB = new File("E:\\Onceng Files\\JAVA GROUP PROJECT\\su

我在Java代码中遇到了这个问题,我的嵌套循环总是在嵌套值中添加一个值,所以如果您请求再次显示一个输出,它将添加另一个输出

这是密码

case '2':
                System.out.print("Enter Subject: ");
                SB = buff.readLine();

                File readSUB = new File("E:\\Onceng Files\\JAVA GROUP PROJECT\\subject.txt");
                File readN = new File("E:\\Onceng Files\\JAVA GROUP PROJECT\\name.txt");
                File readSN = new File ("E:\\Onceng Files\\JAVA GROUP PROJECT\\studNo.txt");
                File readSEC = new File("E:\\Onceng Files\\JAVA GROUP PROJECT\\section.txt");
                File readTD = new File ("E:\\Onceng Files\\JAVA GROUP PROJECT\\TimeDate.txt");

                Scanner scaSUB = new Scanner(readSUB);
                Scanner scaN = new Scanner(readN);
                Scanner scaSN = new Scanner(readSN);
                Scanner scaSEC = new Scanner(readSEC);
                Scanner scaT = new Scanner(readTD);

                while(scaSUB.hasNextLine()) {
                    String s = scaSUB.nextLine();
                    SUBJECT.add(s);
                }

                while(scaN.hasNextLine()) {
                    String s = scaN.nextLine();
                    NAME.add(s);
                }

                while(scaSN.hasNextLine()) {
                    String s = scaSN.nextLine();
                    STUDNO.add(s);
                }

                while(scaSEC.hasNextLine()) {
                    String s = scaSEC.nextLine();
                    SECTION.add(s);
                }

                while(scaT.hasNextLine()) {
                    String s = scaT.nextLine();
                    TIME.add(s);
                }

                System.out.println("Attendance List by SUBJECT: "+SB);
                System.out.println("SUBJECT\t\tNAME\t\t\tSTUDENT NO.\t\tTIME & DATE\n");

                boolean SUBFound = false;
                for(int x = 0; x < SUBJECT.size(); x++) {
                    if(SB.equals(SUBJECT.get(x))) {
                        System.out.println(SUBJECT.get(x)+"\t\t"+NAME.get(x)+"\t\t"+STUDNO.get(x)+"\t\t"+TIME.get(x));
                        SUBFound =true;
                    }
                }

                if(!SUBFound)
                    System.out.println("No Record of "+SB+" Subject");
                break;

正如您所看到的,for(int x=0)的值将保持不变,并且不会重置“我认为我的嫌疑犯”,我如何解决这个问题?我是java新手,这是我第一次在循环中遇到这个bug。

这能回答你的问题吗?
SUBFound=true之后
add
break
在子基金处添加break=true;将中断整个循环,并且给定的数据/输出将变得不完整。我只是想知道循环的问题是什么我不知道为什么循环会使i/O加倍有什么方法可以让我使用读卡器bufferread/FileReader?这能回答你的问题吗?
SUBFound=true之后
add
break
在子基金处添加break=true;将中断整个循环,并且给定的数据/输出将变得不完整。我只是想知道循环的问题是什么我不知道为什么循环会使i/O增加一倍有什么方法可以使用读卡器bufferread/FileReader吗?
 @#@#@#@#@ MENU @#@#@#@#@

[1] LOGIN ATTENDANCE
[2] SHOW ATTENDANCE BY SUBJECT
[3] SHOW ATTENDANCE BY SECTION
[4] SHOW ALL RECORD

=======================================================================================
Input Number: 2
Enter Subject: JAVA
Attendance List by SUBJECT: JAVA
SUBJECT     NAME            STUDENT NO.     TIME & DATE

JAVA        Saludaga Joshua     19-01297        Tue, 12/03/2019 18:02
JAVA        Pulano Hardhie      19-00900        Tue, 12/03/2019 18:02
JAVA        Tatoy Cherrylyn     19-00751        Tue, 12/03/2019 18:02
JAVA        Saludaga Joshua     19-01297        Tue, 12/03/2019 18:02
JAVA        Pulano Hardhie      19-00900        Tue, 12/03/2019 18:02
JAVA        Tatoy Cherrylyn     19-00751        Tue, 12/03/2019 18:02

=======================================================================================
@#@#@#@#@ MENU @#@#@#@#@

[1] LOGIN ATTENDANCE
[2] SHOW ATTENDANCE BY SUBJECT
[3] SHOW ATTENDANCE BY SECTION
[4] SHOW ALL RECORD

=======================================================================================
Input Number: 2
Enter Subject: JAVA
Attendance List by SUBJECT: JAVA
SUBJECT     NAME            STUDENT NO.     TIME & DATE

JAVA        Saludaga Joshua     19-01297        Tue, 12/03/2019 18:02
JAVA        Pulano Hardhie      19-00900        Tue, 12/03/2019 18:02
JAVA        Tatoy Cherrylyn     19-00751        Tue, 12/03/2019 18:02
JAVA        Saludaga Joshua     19-01297        Tue, 12/03/2019 18:02
JAVA        Pulano Hardhie      19-00900        Tue, 12/03/2019 18:02
JAVA        Tatoy Cherrylyn     19-00751        Tue, 12/03/2019 18:02
JAVA        Saludaga Joshua     19-01297        Tue, 12/03/2019 18:02
JAVA        Pulano Hardhie      19-00900        Tue, 12/03/2019 18:02
JAVA        Tatoy Cherrylyn     19-00751        Tue, 12/03/2019 18:02