Java 如何通过检查name的输入是字符串,partId的输入是长字符串来验证输入?
我建议您使用正则表达式,例如,将输入读取为字符串,然后验证字符串是否可解析,然后解析 我不知道您对名称的要求是什么,但我知道long必须至少匹配以下正则表达式Java 如何通过检查name的输入是字符串,partId的输入是长字符串来验证输入?,java,Java,我建议您使用正则表达式,例如,将输入读取为字符串,然后验证字符串是否可解析,然后解析 我不知道您对名称的要求是什么,但我知道long必须至少匹配以下正则表达式^\d+$ 以下是验证输入的方法: static Product createProduct() { Scanner sc = new Scanner(System.in); System.out.println("\nEnter new product "); System.out.pri
^\d+$
以下是验证输入的方法:
static Product createProduct() {
Scanner sc = new Scanner(System.in);
System.out.println("\nEnter new product ");
System.out.print(" Name: ");
String n =sc.nextLine();
while(n==sc.nextLine()){
if(n !=sc.nextLine()){
System.out.println("ERROR! Please Try again!");
}
sc.nextLine();
}
欢迎来到堆栈溢出!我建议您阅读关于如何编写好问题以获得好答案的指南。除了parseLong仍然可能失败,即使它通过了正则表达式,因此我们可以避免正则表达式并捕获异常,因为我们无论如何都必须这样做。
if (Pattern.compile("^\\d+$").matcher(idStr).find()) {
long id = Long.parseLong(idStr);
}