Java中数组中的If x
在python中,可以使用非常简单的if语句查看用户输入的内容(或只是变量)是否在列表中:Java中数组中的If x,java,Java,在python中,可以使用非常简单的if语句查看用户输入的内容(或只是变量)是否在列表中: myList = ["x", "y", "z"] myVar = "x" if myVar in x: print("your variable is in the list.") 如何在Java中实现这一点?如果您的数组类型是引用类型,则可以使用Arrays.asList(T..)将其转换为列表,并检查它是否包含元素 if (Arrays.asList(array).contains("wh
myList = ["x", "y", "z"]
myVar = "x"
if myVar in x:
print("your variable is in the list.")
如何在Java中实现这一点?如果您的数组类型是引用类型,则可以使用
Arrays.asList(T..)
将其转换为列表
,并检查它是否包含元素
if (Arrays.asList(array).contains("whatever"))
// do your thing
这里有一个解决方案
String[] myArray = { "x", "y", "z" };
String myVar = "x";
if (Arrays.asList(myArray).contains(myVar)) {
System.out.println("your variable is in the list.");
}
产出是,
your variable is in the list.
您可以遍历数组并进行搜索,但我建议使用
Set
集合
Set<String> mySet = new HashSet<String>();
mySet.add("x");
mySet.add("y");
mySet.add("z");
String myVar = "x";
if (mySet.contains(myVar)) {
System.out.println("your variable is in the list");
}
Set mySet=new HashSet();
mySet.add(“x”);
mySet.add(“y”);
添加(“z”);
字符串myVar=“x”;
if(mySet.contains(myVar)){
System.out.println(“您的变量在列表中”);
}
Set.contains()
在O(1)
中进行计算,在最坏的情况下,遍历数组进行搜索需要O(N)
。您可以自己迭代数组,而不是调用Arrays类
String[] array = {"x", "y", "z"};
String myVar = "x";
for(String letter : array)
{
if(letter.equals(myVar)
{
System.out.println(myVar +" is in the list");
}
}
请记住,字符串在Java中只不过是一个字符数组。就是
String word = "dog";
实际上存储为
char[] word = {"d", "o", "g"};
因此,如果调用if(letter==myVar),它将永远不会返回true,因为它只是查看JVM中的引用id。这就是为什么我在上面的代码中使用
if(letter.equals(myVar)) { }
if(letter.equals(myVar)) { }