当前位置: 首页 > 知识库问答 >
问题:

试图获取一个仅为int且介于1-3之间的输入

屠兴旺
2023-03-14

我正在制作一个TicTacToe游戏克隆,需要获得关于玩家想要将其选择放置在哪里的输入。

代码如下:

共有1个答案

王才
2023-03-14

hasNextInt()只会返回整数。否则检查没有意义。

通过在if语句中调用nextInt(),然后再次在body中调用,可以读取两个数字。

试试吧

int row = 0;
while (scan.hasNext() && row < 1 || row > 3) {
    String next = scan.next();
    try { 
        row = Integer.parseInt(next);
    } catch (NumberFormatException e) { 
        System.out.println("invalid input " + next);
    }
} 
 类似资料:
  • 我想知道如何验证这段代码,使输入只能是一个int,介于min和max之间?到目前为止,我只能停止输入小于1和使用任何最大值。但我似乎无法创建这样一个场景:如果用户输入的不是最大值和最小值(例如“AAA”)之间的任何值,它就会循环。我不断收到输入不匹配错误。任何帮助都将不胜感激!

  • 我正在尝试使用Java 8s来查找中的元素。但是,我想保证只有一个和筛选条件匹配。 取此代码: 此代码根据的ID查找他们。但不能保证有多少与筛选器匹配。 将筛选器行更改为: 将抛出(好!) 但是,如果有多个匹配,我希望它抛出一个错误。有办法做到这一点吗?

  • 如果您试图找出int是否介于数字之间,为什么不能这样做: 相反,你要做的是 好像有点开销。

  • 我似乎对一个简单的时间跟踪器有一个问题。它的设置方式是用户可以跟踪与项目相关的命中时间或自由输入某些内容。这意味着时间表对象总是有一个用户,但并不总是有一个项目。当我在连接到用户的数据库中创建一个时间表对象,但然后将一个与用户没有关联的项目连接到同一个时间跟踪对象时,可能会出现不一致。 解决这个问题的最佳方法是什么。我听说过定向联想,但我不知道它是如何解决问题的

  • 问题内容: 我有一个InnoDB表和一个列索引,就像这样 我只想了解这些查询背后的真实情况: 和 据我了解,第一个MySQL将使用列寿命索引,而第二个则无法使用。是吗?哪个对性能更好? 问题答案: 这两个查询都将使用索引。 查询A将转换为: 查询B将转换为 因此查询A将使用OR进行3个测试。 查询B将使用AND进行2个测试。 查询B更快。 通常,使用的查询比使用的查询要快。 另外,查询B执行的测试

  • 我是Hadoop的新手,但这是我上个月的一个学习项目。 为了使这一点足够模糊,以便对其他人有用,让我先抛出基本目标……假设: < li >显然,您有一个大型数据集,包含数百万个基本ASCII文本文件。 < ul > < li >每个文件都是一个“记录” e. g. /user/hduser/data/customer1/YYYY-MM-DD, /user/hduser/data/customer2