java - 在线编译器从 System.in 获取输入时导致崩溃
问题描述
使用在线编译器时收到以下错误代码(您可以在这里测试在线代码 -> http://tpcg.io/1Q93ObOJ)
$java -Xmx128M -Xms16M PassVerification
Please enter a new password.
Exception in thread "main" java.util.NoSuchElementException: No line found
at java.util.Scanner.nextLine(Scanner.java:1540)
at PassVerification.main(PassVerification.java:11)
根据我的初学者知识,我收到的错误是命令 nextLine(); 使用它会自动跳过用户输入。我的问题是如何修复它,以便它可以读取用户输入并能够运行必要的 if 和 else 语句,以确保正在创建的密码被认为是强密码。
import java.util.Scanner;
public class PassVerification {
public static void main(String[] args){
Scanner run = new Scanner(System.in);
System.out.println("Please enter a new password.");
String pass = run.nextLine(); //crash occurs here.
System.out.println("User input = "+pass);
//trim codes for validating password, but unrelated to crash...
}
}
解决方案
看起来您使用的在线 java 编译器https://www.tutorialspoint.com/compile_java_online.php具有用于标准输入的单独选项卡。在标准输入选项卡中添加输入字符串后,执行完成。或者,您可以尝试以下具有易于阅读 UI 的在线编译器。 https://onecompiler.com/java/3wvzssxvd
推荐阅读
- php - 上传php后如何获取文件夹路径和文件名?
- google-apps-script - Remove apps-scripts-notifications@google.com notification from Time-Based Script - Google Sheets
- python - I have to compare data from each row of a Pandas DataFrame with data from the rest of the rows, is there a way to speed up the computation?
- google-apps-script - 为什么方法 setColumnFilterCriteria() 给出“不能调用 null 的方法“setColumnFilterCriteria”?
- javascript - 为什么即使在回调中我的状态也不更新?
- algorithm - 仅评估第二个表达式的快速方法
- html - SVG inside HTML doesn't apply basic CSS
- tsql - CASE where a lot of text needs trimming
- mysql - 我如何检索从年初至今到上周日的数据?
- android - 如何在 Excel 文件中添加列名?