java - 如何防止用户重复输入 (Java)

标签 java

我正在编写一个简单的程序,用户可以在其中输入名称和整数。如果尚未使用该整数,则该名称进入一个数组。我的问题是我似乎无法弄清楚如何在输入整数时检查它是否已被使用(重复)。我尝试将整数放入数组中,但无法正常工作。请记住,我是一个完整的新手。所以在下面的代码中,用户输入一个名字后,他/她输入一个时间(整数),如果这个时间还没有被使用过,那么它是有效的;如果它被使用,我需要抛出一个异常。到目前为止,我所拥有的只是为名称工作的代码(将其添加到数组中)。

public void enterName()
{

    Scanner keyboard = new Scanner(System.in);

    for(i = 0; i < arrayNames.length; i++)
    {           
        System.out.println("Please enter your name.");
        names = keyboard.nextLine();

            arrayNames[i] = names;              
            System.out.println("name is in");           
    }
    System.out.println("array is full");


}

最佳答案

使用另一个数据结构(例如 Set ,因为它不包含重复项)会不会更容易?如果您尝试 add集合中已经存在的项目,它将返回 false

关于java - 如何防止用户重复输入 (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7389540/

相关文章:

java - hibernate 环境 : get only changed fields

Javadoc 在 Oracle JDK 上失败,但在 OpenJDK 上却失败

java - 如何向我的股票投资组合添加头寸,目前收到有关不兼容类型无法转换为 int 或 String 的错误

java - 获取字段的值,给定层次路径

java - 标记方法并通过标记从客户端对象调用它们

java - 实现推荐算法

java - 静态变量如何在类加载时获取对象的值?

java - 如何将 16 位字符数组转换为 8 位字符数组并使用 JNA 发送到 C 代码?

java - Android 服务或 Activity 可以知道哪个 Intent 打开了它吗?

java - Java 中创建字符串的时间