我要用户输入数字,我需要检查用户的答案是否仅为一个整数
这是我的代码:
$('#anyQuestion').validate({
rules: {
name: {
required: true
},
email: {
required: true,
email: true
},
phone: {
required: true,
minlength: 10
}
},
submitHandler: function () {
var anyQuestionForm = $('#anyQuestion');
anyQuestionForm.submit(function (e) {
// e.preventDefault();
$.ajax({
type: 'post',
url: '/xhr/anyquestion',
data: anyQuestionForm.serialize(),
success: function (data) {
if( data == 'ok' ){
Swal.fire({
position: 'top-end',
type: 'success',
showConfirmButton: false
})
console.log(data);
document.getElementById("anyQuestion").reset();
}
},
error: function (data) {
Swal.fire({
type: 'error',
})
},
});
});
}
});
我已经尝试过了,对于如下输入:34443 22123 cdsfr4d,它显示错误(表示正常工作),但是当我只给出2或3个整数时:34或567,则不会显示任何错误!我如何对其进行管理以便向我显示正确的消息
答案 0 :(得分:0)
删除&& input.hasNextByte()
答案 1 :(得分:0)
我假设您只希望用户输入:1、2或3,因为这是我在控制台菜单中看到的。
我处理此问题的方法是使用switch语句和默认情况(如果它们输入其他任何内容)。
if (!(input.hasNextInt()) { // if the input is not an integer and more than one
System.out.println("ERROR!!Enter an integer value ");
input.next();
} else {
int choice = input.nextInt();
switch (choice) {
case 1: //If choice is 1
case 2: // If choice is 2
case 3: // If choice is 3
default: // If choice is any other integer
}
}
Switch语句在Java中并不常用,因为通常有更好的方法来处理这些情况。以下是有关switch语句的更多信息: https://docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html
欢迎使用Stack Overflow社区,请确保在使用Stack之前先使用Google!
答案 2 :(得分:0)
我不确定您想做什么。但是按照您的方法,似乎您想通过键盘输入一个数字,并希望检查它是否是一个数字。如果我是对的,那么我们开始吧。
public class Tests1 {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter the number");
int number = sc.nextInt();
Tests1 obj1=new Tests1();
System.out.println(obj1.digit(number));
}
public boolean digit(int num) {
int count = 0;
while (num != 0) {
num = num / 10;
count++;
}
if (count == 1) {
return true;
}
return false;
}
}
我的代码检查数字是否为个位数。如果它是一个数字,则返回true,否则返回false。