gpt4 book ai didi

java - 如何检测 Scanner.next() 的第一个标记是否是字符串的整数?

转载 作者:行者123 更新时间:2023-12-02 03:56:02 25 4
gpt4 key购买 nike

Scanner scan = new Scanner(System.in);
scan.next(); //How to detects if the first token is an int; i.e (Integer.valueOf(scan)
//will not throw InputMismatchException

我有重载的方法

  void name(String name){
System.out.println(name)
}
void age(int age){
System.out.println(age)
}

void printAgeOrName(){
System.out.println("Enter name or age");
String data = scan.next();
*if(first token of date is int){
age(Integer.valueOf(date));
}else{
name(data);
}
` }

scan.hastNextInt() 仅适用于输入多个 token 时。我还没有熟悉正则表达式

最佳答案

这就是我最终所做的,感谢 @João Gatto 代码。

 void printAgeOrName(){
System.out.println("Enter name or age");
String data = null;
try{
data = scan.next();
age(Integer.valueOf(date)); // will throw NumberFormatException if data is not an integer
}catch (NumberFormatException n){ // catch and assume data is a string
name(data);
}
` }

关于java - 如何检测 Scanner.next() 的第一个标记是否是字符串的整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35445160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com