如何设置for循环计数从1开始而不是0?

任何人都可以告诉我如何停止以0开头的系统计数,以便我的系统(PC)计数为我的IDE提供正确的计数。对不起,我的英语我不能清楚解释,但我会告诉你我的问题。

这是我的代码。

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 a = scaSUB.nextLine();
                    SUBJECT.add(a);
                    break;
                }

                while (scaN.hasnextLine()) {
                    String b = scaN.nextLine();
                    NAME.add(b);
                    break;
                }

                while (scasn.hasnextLine()) {
                    String c = scasn.nextLine();
                    STUDNO.add(c);
                    break;
                }

                while (scaSEC.hasnextLine()) {
                    String d = scaSEC.nextLine();
                    SECTION.add(d);
                    break;
                }

                while (scaT.hasnextLine()) {
                    String e = scaT.nextLine();
                    TIME.add(e);
                    break;
                }

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

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

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

这是我要修复的输出。

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

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

=======================================================================================
Input Number: 3
Enter Section: B1-1AM
Attendance List by SUBJECT: B1-1AM
  SECTION       STUDENT NO.     NAME            TIME & DATE

0 B1-1AM        19-01297        Saludaga Joshua     Tue,12/10/2019 19:18
1 B1-1AM        19-00751        Tatoy Cherrylyn     Tue,12/10/2019 19:26
2 B1-1AM        19-00900        Pulano Hardhie      Tue,12/10/2019 19:26
3 B1-1AM        19-01297        Saludaga Joshua     Tue,12/10/2019 19:18   <= Repeated Output

=======================================================================================

正如您所看到的那样,输出仍然泄漏了两倍,我不知道如何停止重复的输出,我认为计数是造成这种情况的原因,或者我的逻辑我尝试了很多方法来打破循环。 对不起,我的英语不是我通常使用的语言。

  

另一个更新循环仍会继续,即使循环已经中断;如果您重复请求输出数据以保持循环,仍然可以解决该问题?

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

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

=======================================================================================
Input Number: 2
Enter Subject:PE

Attendance List by SUBJECT: PE
SUBJECT     NAME            STUDENT NO.     SECTION     TIME & DATE

PE      Test Sub 1      19-00001        A1-1AM      Tue,12/10/2019 20:03
PE      Test Sub 2      19-00002        A1-1AM      Tue,12/10/2019 20:05

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

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

=======================================================================================
Input Number: 2
Enter Subject:MATH

Attendance List by SUBJECT: MATH
SUBJECT     NAME            STUDENT NO.     SECTION     TIME & DATE

MATH        Test Sub 3      19-00003        A1-1AM      Tue,12/10/2019 20:16

=======================================================================================
@#@#@#@#@ 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.     SECTION     TIME & DATE

JAVA        Saludaga Joshua     19-01297        B1-1AM      Tue,12/10/2019 19:18
JAVA        Tatoy Cherrylyn     19-00751        B1-1AM      Tue,12/10/2019 19:26
JAVA        Pulano Hardhie      19-00900        B1-1AM      Tue,12/10/2019 19:26
JAVA        Saludaga Joshua     19-01297        B1-1AM      Tue,12/10/2019 19:18
JAVA        Saludaga Joshua     19-01297        B1-1AM      Tue,12/10/2019 19:18

=======================================================================================
@#@#@#@#@ 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.     SECTION     TIME & DATE

JAVA        Saludaga Joshua     19-01297        B1-1AM      Tue,12/10/2019 19:18

=======================================================================================
adsli 回答:如何设置for循环计数从1开始而不是0?

这是因为要打印循环索引,只需在打印中将x加1

System.out.println((x + 1)+SUBJECT.get(x)+"\t\t"+NAME.get(x)+"\t\t"+STUDNO.get(x)+"\t\t"+SECTION.get(x)+"\t\t"+TIME.get(x));
本文链接:https://www.f2er.com/2949605.html

大家都在问