(Beginner) JAVA faire ... alors que la logique de boucle cassée?

tilenbox:

Dans le code ci-dessous je fais une boucle do..while qui est censé répétition si la valeur est comprise entre 1000 et 9999, mais la logique de la boucle do..while semble hors tension.

import java.util.Scanner;
public class Nal2 {
public static void main(String[] ARGS) {
    int i = 0;
    Scanner bralnik = new Scanner(System.in);
    do {
        System.out.printf("Insert a 4 digit num: ");
        i = bralnik.nextInt();
    } while (i >= 1000 && i <= 9999);

    System.out.print("Oi");
  }
}

Ce travail ne marche pas, mais le code ci-dessous œuvres.

import java.util.Scanner;
public class Nal2 {
public static void main(String[] ARGS) {
    int i = 0;
    Scanner bralnik = new Scanner(System.in);

    do {
        System.out.printf("Insert a 4 digit num: ");
        i = bralnik.nextInt();

    } while (i <= 1000 || i >= 9999);

    System.out.print("Oi");
 }
}

Les shouldn &&œuvres au lieu de ||?

Je suis vraiment confus à ce sujet.

J'utilise InteliJ IDEA 04/03/2019 CE

sublime Ibrahimli:
   public static void main(String[] args) {
        int i = 0;
        Scanner bralnik = new Scanner(System.in);

        do {
            System.out.printf("Insert a 4 digit num: ");
            i = bralnik.nextInt();


        } while (!(i<=1000||i>=9999));

        System.out.print("Oi");
    }

si vous écrivez code juste avec OR (||), vous écrivez ci-dessus. ! est logique de ne pas inverser le résultat, retourne false si le résultat est vrai. Votre deuxième extrait ne fonctionne pas parce que, vous écrivez OU, OU renvoie true si l'une des conditions est vraie.

Je suppose que tu aimes

Origine http://43.154.161.224:23101/article/api/json?id=371142&siteId=1
conseillé
Classement