java - 输入扫描仪被跳过
问题描述
此代码实际上在 if 语句中(以确定它是讲师还是学生,但两者的问题相同,输入名称被跳过) Lecturer a = new Lecturer();
System.out.print("Please enter your Lecturer Identification Number, Sir : ");
input.nextLine();
a.setLect_num(input.nextLine());
System.out.print("\nPlease insert your Name, Sir : ");
a.setName(input.nextLine());
System.out.print("\nPlease enter your Age, Sir : ");
a.setAge(input.nextInt());
System.out.print("\nPlese enter the course you are in charge, Sir : ");
input.nextLine();
a.setCourse(input.nextLine());
a.setOccupation("Teacher");
a.introduction();
解决方案
在代码片段的第 2 行中,您正在从扫描仪收集输入并将其丢弃:
System.out.print("Please enter your Lecturer Identification Number, Sir : ");
input.nextLine(); // this line is gathering input and discarding it
a.setLect_num(input.nextLine());
推荐阅读
- javascript - JavaScript 替换多个 if 语句
- c# - 使用 MemoryManagedViewAccessor 将 json 序列化字符串写入文件
- machine-learning - 机器学习,其中训练数据的标签可能不是 100% 准确
- cookies - 如果您可以控制登录会话,是否可以使用 Headless Chrome 访问登录会话?
- python - 在 Pandas 中分组和求和而不丢失列
- sql - 在 LINQ 中包含带有 where 子句的对象
- asp.net-core - 在 ASP.NET Core 2 中返回状态码为 201 的文件
- javascript - 试图将 Django 隐藏到页面源中显示的 JS 声明变量
- javascript - Safari、javascript:等待打印确认窗口
- python - 为什么在这个产生小倍数的代码中需要 numpy.ravel() ?