gpt4 book ai didi

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

转载 作者:搜寻专家 更新时间:2023-11-01 01:43:10 24 4
gpt4 key购买 nike

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

(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/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com