比较两个整数串并打印出匹配

时间:2012-11-29 23:20:54

标签: java string integer

让我们说这是我的两个字符串

String listOfIntegers = ("1 5 9 12 15 50 80 121");
String integerToLookFor = ("12");

我希望我的程序扫描listOfIntegers并打印出integerToLookFor是否在字符串中。 有什么想法吗?

6 个答案:

答案 0 :(得分:6)

  1. 将空格分隔为分隔符以获取字符串数组。
  2. 扫描数组并检查每个元素是否等于查找变量。
  3. 代码:

    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
        }
    }
    

答案 1 :(得分:2)

我会将列表拆分为字符串数组,然后使用foreach循环,我会通过比较值找到匹配。

答案 2 :(得分:2)

如果您确保要搜索的列表和号码都包含在空格中,您可以简化搜索:

    String listOfIntegers = " " + "1 5 9 12 15 50 80 121" + " ";
    String integerToLookFor = " " + "12" + " ";
    if (listOfIntegers.indexOf(integerToLookFor) != -1) {
        // match found
    }

答案 3 :(得分:2)

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));

答案 4 :(得分:0)

Array ints = listOfIntegers.split(' ');
print ints.inArray(integerToLookFor);

答案 5 :(得分:0)

您可以在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());

}