在这个java方法中,扫描器接收最小值和最大值之间的整数。如果接收到的int超出这些界限,程序将正确输出“无效输入”。然而,如果输入了诸如“g”或“h”之类的内容,或者输入了int以外的内容,就会创建一个无休止的循环。
我试图在代码中的多个位置重新初始化扫描仪,但它看起来像是从System.in输入int以外的东西时,它只是再次通过扫描仪飞行并保持循环。任何想法
public static int promptInt(int min, int max) {
while (false != true) {
int b = 0;
Scanner scnr = new Scanner(System.in);
System.out.print("Choose a value between " + min + " and " + max + ": ");
if (scnr.hasNext()) {
if (scnr.hasNextInt()) {
b = scnr.nextInt();
if (b <= max) {
return b;
} else {
System.out.println("Invalid Value");
}
}
else if (scnr.hasNextInt() == false) {
System.out.println("Not an Int");
}
}
}
}
根据上面的一些评论,scnr。next()是必需的,否则它将继续检查初始化的第一个扫描仪。下面是修订后的代码,现在可以使用了。
public static int promptInt(int min, int max) {
Scanner scnr = new Scanner(System.in);
while (false != true) {
int b = 0;
System.out.print("Choose a number between " + min + " and " + max + ": ");
if (scnr.hasNext()) {
if (scnr.hasNextInt() == false) {
System.out.println("Invalid value.");
//the scnr.next was needed here
scnr.next();
}
else {
b = scnr.nextInt();
if (b <= max) {
return b;
} else {
System.out.println("Invalid value.");
}
}
}
}
}
我需要创建一个简单的游戏,其中创建了一个随机数,用户必须猜测数字输入到扫描仪。如果他们的猜测太高,系统会告诉他们猜测得更低,如果猜测得太低也是一样。 我正在使用while循环,但我不知道如何连续调用扫描器,以便用户可以不断猜测。以下是我到目前为止的代码:
我正在使用Jersey 2.5.1和Jackson 2.2。用于构建JSON Rest web服务。我也用2个ExceptionMappers启动并运行了它,但对于“非json”请求,应用程序不会抛出任何异常! > 如果抛出NullPointerException,将调用ExceptionMapper 如果JSon映射有问题,将调用ExceptionMapper 我的问题:1.请求正文:{}工作2
问题内容: 可以将Hibernate配置为自动扫描软件包以从带注释的Bean 创建A 吗? 目前我正在使用 我不想使用配置映射。 请注意,我想在不使用任何Spring或此类框架的情况下,在一个普通的Java项目中实现这一目标。 以前使用Spring可以回答类似的问题,但是我想在不使用Spring或其他框架的情况下实现。我对执行此操作的一些简单库持开放态度。 问题答案: 不能。即使使用最新的Hibe
我有一段简单的代码,它应该是一个无休止的循环,因为将一直增长,并且始终大于。 但按原样,它打印并且不会无休止地循环。我想不出为什么。但是,当我以以下方式调整代码时: 它变成了一个无休止的循环,我不知道为什么。java是否认识到它是一个无休止的循环并在第一种情况下跳过它,但在第二种情况下必须执行一个方法调用,这样它的行为就像预期的那样?困惑:)
正如使用boto3完全扫描dynamoDb中所解释的,我构建了一个解决方案,使用某些条件完全扫描dynamoDb表。这是我的代码: 但是当代码被执行时,它会进入一个无限循环。这是LastEvaluatedKey每次迭代的输出: 它一直在这两对之间循环。 编辑: 我添加了do_scan方法。
有数据集在. csv文件格式 这个文件有超过4百万行。 我在远程超级计算机上运行数据库,我使用ssh隧道连接。我创建2个索引: 然后执行查询: 过了一段时间,我不知道一个小时,有关查询执行的信息消失或出现未知错误。但是当我localhost:7474/webadmin统计数据时,节点数量增长非常缓慢——大约10秒内增加5-8个节点。 当我执行查询时:(我可以,因为没有显示正在运行的查询) 大约有7