Java 列出一组要搜索的值的可能性
我的问题是:是否有可能在if语句中列出一组要搜索的值?还是有更好的方法? 例如:Java 列出一组要搜索的值的可能性,java,search,if-statement,Java,Search,If Statement,我的问题是:是否有可能在if语句中列出一组要搜索的值?还是有更好的方法? 例如: Scanner input=new Scanner (System.in); String searchTerm=input.next(); if(input==1d,2d,3d,4d,5c,1a,3x,5c,6b){ // Do stuff } Set<String> invalidInputs = new HashSet<String>(); validInputs.add(
Scanner input=new Scanner (System.in);
String searchTerm=input.next();
if(input==1d,2d,3d,4d,5c,1a,3x,5c,6b){
// Do stuff
}
Set<String> invalidInputs = new HashSet<String>();
validInputs.add("1d"); //and all the rest
编辑:非常抱歉,我没有意识到我的问题没有完成,甚至有点错误。。。天哪。现已修复。您可以根据值创建一个列表,然后检查是否包含
if (list.contains(input))
使用和使用
包含将它们转换为列表
:
if (!Arrays.asList("1d", "2d", "3d", "4d", "5c", "1a", "3x", "5c", "6b").contains(input)) {
// Do stuff
}
创建一个新集合,并查看是否在其中找到该值:
if(!(Arrays.AsList("1d", "2d", "3d", "4d").Contains(input))){ }
将值集放入集合中。例如:
Scanner input=new Scanner (System.in);
String searchTerm=input.next();
if(input==1d,2d,3d,4d,5c,1a,3x,5c,6b){
// Do stuff
}
Set<String> invalidInputs = new HashSet<String>();
validInputs.add("1d"); //and all the rest
我建议使用以下列表:
- 将要搜索的值添加到列表中
- 使用
List.contains(Object o)
检查输入是否为其中一个值
您需要使用if语句进行单独的比较(这不需要使用Java更高级的东西)。如果要比较多个值,我建议使用Switch语句
switch (input){
case '1d': case '2d': case '3d': case '4d': case '5c': case '1a': case '3x': case '6b':
//do something
break;
default:
//do something
}
尝试使用数组
String[] test= {"1d","2d","3d","4d","5c","1a","3x","5c","6b"};
for(int i=0;i<test`length;i++)
if(!input.contentEquals(test[i]))
{
//Something
}
String[]test={“1d”、“2d”、“3d”、“4d”、“5c”、“1a”、“3x”、“5c”、“6b”};
对于(int i=0;i)我是真正需要搜索的字符串,例如“1d”、“2d”
,等等?或者可能?你的问题不清楚。@m0skit0,什么?他答对了。!
不是唯一的原因。今天的回答很快,我理解了我的代码空白。我责备7个小时的编码,可能5-6个小时在午夜之前就结束了。哦,太好了。任何收集都可以