我想搜索数组的项目。如果它找到整数值,那么它应该打印1否则它打印“NOt”。我想出了下面的男女同校,但没有帮助。我的问题是有没有办法让binnerySerach方法接受整数?
while (inputStream.hasNext()){
String data= inputStream.next();
String [] token =data.split(",");
for(int i =0; i<14;i++)
{
int sherchitem = 1+i;
}
Arrays.sort(token);
int founditem= Arrays.binarySearch(token, sherchitem);
if (founditem>-1)
{
System.out.println("1");
}
else{System.out.println("Not");}
答案 0 :(得分:0)
二进制搜索除了与数组相同的类型外。在这种情况下,您已经给它String[]
,因此它需要String
。您可以将数据解析为整数,也可以使用更简单的解决方案:
int founditem= Arrays.binarySearch(token, String.valueOf(sherchitem));
答案 1 :(得分:0)
调用此方法,并将整数数组和您正在寻找的值传递给它。
public static void searchArray(int[] values, int target){
//Loop through the array and compare all the elements with the target
for(int i = 0; i < values.length; i++) {
//If we find the target, print the success message
if(values[i] == target) {
System.out.println("found it at: " + );
return; //We can return out of the method
}
}
//If we get down to here, we didn't find the target
System.out.println("not");
}