java - 根据用户输入测试字符串和整数数组

标签 java arrays if-statement user-input

我已经为我想在我的程序中使用的字符串和整数创建了数组,我想使用它们而不是使用

(name.equals "barry"||"matty"

例如。

我想知道如何编写 if 语句来根据数组中的字符串检查用户输入。

import java.util.Scanner;

public class Username
{
    public static void main (String[]args)
    {
        Scanner kb = new Scanner (System.in);
        // array containing usernames 
        String [] name = {"barry", "matty", "olly","joey"}; 

        System.out.println("Enter your name");
        name = kb.nextLine();
        if (name.equals("barry ")|| name.equals("matty" ) || name.equals("olly")||name.equals("joey"))
            System.out.println("you are verified you may use the lift");

        Scanner f = new Scanner(System.in);
        int floor;

        int [] floor = {0,1,2,3,4,5,6,7};

        System.out.println("What floor do you want to go to ");
        floor = f.nextInt();

        if (floor >7)
            System.out.println("Invalid entry");
        else if (floor <= 7)
            System.out.println("Entry valid");
    }
}

最佳答案

认为您只是在寻找List.contains - 但这需要 List当然不是数组。这里有两个明显的选择。

首先,您可以使用 List<String>开始于:

List<String> names = new ArrayList<>();
names.add("barry");
names.add("matty");
names.add("olly");
names.add("joey");
...
if (names.contains(name))
{
    ...
}

或者,您可以使用 Arrays.asList创建 View :

String[] names = {"barry", "matty", "olly", "joey"}; 
List<String> namesList = Arrays.asList(names);
...
if (namesList.contains(name))
{
}

作为第三种选择,如果你让你的名字数组排序(手动或调用 Arrays.sort ),你可以使用 Arrays.binarySearch 尝试查找用户输入的名称:

String[] names = {"barry", "matty", "olly", "joey"}; 
Arrays.sort(names);
...
if (Arrays.binarySearch(names, name) >= 0)
{
    ...
}

关于java - 根据用户输入测试字符串和整数数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22731887/

相关文章:

java - 观察者模式无限循环

c++ - 从文件中读取数字列表到动态数组

python - 分箱后如何对数字列表的内容进行配对

excel - 数据透视表显示值,而不是值的总和

java - 使用 Ant API 编译 Java 文件时出错 - "error starting modern compiler"

java - 用 jline 预填充一行

java - 如果输入不是想要的内容,如何弹出重试窗口?

c# - 验证整数值的最短方法

java - 两个 java.sql.Date 之间的 Select 语句

java - java中不同数组声明的区别