Java Switch Case问题:如何避免控制台打印用户输入内容?
解决Java星期查询程序中输入数字被打印的问题
核心原因
你的代码里肯定存在一行主动输出输入数字的语句,比如System.out.println(day)(假设存储输入的变量是day),这才导致控制台先显示输入的数字,再输出法语星期名称。
具体修复步骤
- 定位代码中处理输入的部分,比如类似这样的代码段:
Scanner scanner = new Scanner(System.in); int dayNum = scanner.nextInt(); System.out.println(dayNum); // 这行就是多余的打印语句 // 以下是switch case逻辑 switch(dayNum) { case 1: System.out.println("Lundi"); break; case 2: System.out.println("Mardi"); break; // 其他星期的case分支... } - 删除掉那行打印输入变量的代码(比如示例中的
System.out.println(dayNum);),保存后重新运行程序即可。
特殊情况排查
如果代码里没有显式的打印输入语句,检查是否在读取输入时误将输入结果直接输出,比如错误写法:
int dayNum = System.out.println(scanner.nextInt()); // 这种写法会同时完成输入读取和打印
需修正为正常的输入读取逻辑:
int dayNum = scanner.nextInt();
内容的提问来源于stack exchange,提问作者moh470
相关产品推荐
相关产品推荐

