比方說,這是我的兩個字符串比較整數的兩個字符串,並打印出匹配
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");
我希望我的程序掃描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
}
}
Array ints = listOfIntegers.split(' ');
print ints.inArray(integerToLookFor);
我會將列表拆分爲字符串數組,然後使用foreach循環,我會通過比較值來找到匹配。
您可以使用匹配器和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());
}
如果您確保清單和數量都尋找被封閉的空間中,可以簡化搜索:
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));