假设这是我的两个字符串
String listOfIntegers = ("1 5 9 12 15 50 80 121");
String integerToLookFor = ("12");
我希望我的程序扫描 listOfIntegers 并打印出 integerToLookFor 是否在字符串中。有任何想法吗?
代码:
String listOfIntegers = ("1 5 9 12 15 50 80 121");
String integerToLookFor = ("12");
String[] splitArr = listOfIntegers.split("\\s");
for(String s: splitArr){
if(s.equals(integerToLookFor)) {
System.out.println("found: " + s);
break; //breaks out of the loop
}
}
我会将列表拆分为字符串数组,然后使用 foreach 循环通过比较值来找到匹配项。
如果您确保要搜索的列表和数字都包含在空格中,则可以简化搜索:
String listOfIntegers = " " + "1 5 9 12 15 50 80 121" + " ";
String integerToLookFor = " " + "12" + " ";
if (listOfIntegers.indexOf(integerToLookFor) != -1) {
// match found
}
import java.util.Arrays;
String listOfIntegers = ("1 5 9 12 15 50 80 121");
String integerToLookFor = ("12");
System.out.println(Arrays.asList(listOfIntegers.split(" ")).contains(integerToLookFor));
Array ints = listOfIntegers.split(' ');
print ints.inArray(integerToLookFor);
您可以在 regex 包中使用 Matcher 和 Pattern.compiler。请参见下面的示例:
Pattern p = Pattern.compile(integerToLookFor);
Matcher m = p.matcher(listOfIntegers);
while(m.find()){
System.out.println("Starting Point:"+m.start()+"Ending point:"+m.end());
}