在 or 条件之一为假后,while 循环会继续执行吗

Do while loop keeps going after one of the or conditions is false

这是我正在使用的代码:

 System.out.print("Naam van team 1: ");
    String team1 = input.nextLine();

    System.out.print("Naam van team 2: ");
    String team2 = input.nextLine();

    int[] puntenTeam1 = new int[6];
    int[] puntenTeam2 = new int[6];

    int gewonnenWedstrijdenTeam1 = 0;
    int gewonnenWedstrijdenTeam2 = 0;

    int i = 0;


    do{
            System.out.println("Uitslag wedstrijd " + (i+1));
            System.out.print("\tAantal punten " + team1 +  ": ");
            puntenTeam1[i] = input.nextInt();

            System.out.print("\tAantal punten " + team2 +  ": ");
            puntenTeam2[i] = input.nextInt();

            if (puntenTeam1[i] > puntenTeam2[i]){
                gewonnenWedstrijdenTeam1++;
            }else if (puntenTeam2[i] > puntenTeam1[i]){
                gewonnenWedstrijdenTeam2++;
            }
            i++;

    } while(gewonnenWedstrijdenTeam1 < 4 || gewonnenWedstrijdenTeam2 < 4);

如果 gewonnenWedstrijdenTeam2 或 gewonnenWedstrijdenTeam1 高于 4,它会一直循环...但它说它在调试时是错误的。为什么会这样?

你需要改变

while(gewonnenWedstrijdenTeam1 < 4 || gewonnenWedstrijdenTeam2 < 4);

while(gewonnenWedstrijdenTeam1 < 4 && gewonnenWedstrijdenTeam2 < 4);

or 如果两者都大于 4 则继续循环并且 and 循环一直循环直到 2 中的一个超过 4