好的,这是我刚刚开始编码的基本知识。无论如何我做了一个变量;
double radius
我希望if条件能够做到这一点;
if (radius != double) {
System.out.println("Please enter a number."); }
所以问题是我不知道Java的代码来检查半径是不是双倍。例如一个字符串。我输入的那个显然是错的。 谁能告诉我正确的那个?
答案 0 :(得分:1)
您可以解析值并捕获异常,例如,您可以尝试这样
try{
Double.valueOf("asdasd");
}
catch (Exception ex){
System.out.println("Not a valid double value");
}
返回Not a valid double value
包装类Double
可能会有所帮助。你可以这样做:
try{
if(radius instanceof Double)
System.out.println(radius);
}
catch (Exception ex){
System.out.println("error");
}
半径必须声明为Double
。
PS:instanceof
不能与double
一起使用,它是一种原始数据类型。
答案 1 :(得分:0)
Scanner sc = new Scanner(System.in);
double radius;
while (true) {
System.out.println("Input Radius:");
try {
inputt = Double.parseDouble(sc.next());
break;
} catch (NumberFormatException ignore) {
System.out.println("Please enter a number.");
}
}
如果用户输入数字/双精度,则仅中断while循环。