Au cours du processus de développement, nous rencontrons souvent divers problèmes, et parfois même des problèmes apparemment simples nous laissent perplexes. Par exemple, vous pouvez rencontrer un problème qui vous dérange, à savoir comment résoudre le problème de nextLine et le faire fonctionner correctement. Ne vous inquiétez pas, l'éditeur PHP Xinyi est là pour vous fournir quelques méthodes et techniques pour résoudre ce problème, dans l'espoir de vous aider à résoudre ce problème. Ici, nous jetons un coup d'oeil!
do { System.out.println("write in format \"firstname lastname\""); //just want to scan a sentence with spaces String[] tempArr = sc.nextLine().split(" "); System.out.println("Hello " + tempArr[0]); System.out.println("Do you want to do it again Y/N"); }while(sc.next().equals("Y"));
Je ne sais pas comment empêcher le scanner de ligne suivant de numériser les blancs après la première itération
Je veux que la boucle s'exécute jusqu'à ce que quelque chose d'autre que "y" soit saisi.
Je n'utiliserais pas do...while
循环。您可以通过创建一个无限循环来轻松地做到这一点,如果答案不是“y”,该循环就会停止。我假设您想循环用户输入 y
pour cela et j'arrêterais autre chose. Si c'est l'inverse, inversez simplement la valeur booléenne dans l'instruction if. Essayez quelque chose comme ceci :
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (true) { System.out.println("write in format \"firstname lastname\""); String[] tempArr = sc.nextLine().split(" "); System.out.println("Hello " + tempArr[0]); System.out.println("Do you want to do it again Y/N"); String answer = sc.nextLine(); if (!answer.equalsIgnoreCase("Y")) { break; } } } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!