[英]boolean to detect an element in array
public static boolean linearSearch(int[] array, int target)
:此方法應將int和int數組作為輸入。 如果元素目標存在於array中,則應返回true。 它應該通過順序檢查一次數組的每個元素來做到這一點
從數組的開始到結束。 如果該元素不存在,則該方法應返回false。
public class ArrayUtilities{
public static void main(String[] args){
int[] array1= {1,2,3,4,5};
int target1 = 2;
linearSearch(array1,target1);
}
public static boolean linearSearch(int[] array, int target){
int x=0;
for(int i = 0; i< array.length; i++){
if(array[i] == target){
return true;
}
else{
x++;
}
}
if(x == 0){
return false;
}
return linearSearch;//**error here!**
}
}
這是我為這個問題編寫的代碼。 但是我在返回linearSearch時出錯。 我不明白為什么。 先感謝您!
錯誤說:符號:變量linearSearch位置:類ArrayUtilities
找到匹配項后立即返回true很好。
但是我不明白x
變量的目的。 我將其完全刪除(並從if
刪除else
)。
如果您完成了for
循環,則找不到它,可以在此處返回false
。 該行return linearSearch
沒有任何意義。 for
循環結束后只有一行: return false;
。
為什么最后要有條件的“其他”? 如果循環結束而未找到任何匹配項,則返回false,只要找到匹配項,則返回true。 我的意思是,一旦找到匹配項,則返回true;如果結束迭代而沒有找到任何內容,則返回false。
public static boolean linearSearch(int[] array, int target){
for(int i = 0; i< array.length; i++){
if(array[i] == target){
return true;
}
}
return false;
}
return語句后面必須有一個布爾值或變量。 linearSearch(不帶任何參數)都不是這些。
確定要返回的內容,我看到您返回的是true,即布爾值,也正在嘗試返回線性搜索,我不知道那是什么。 它必須為true或false。
public boolean check;
public static boolean linearSearch(int[] array, int target){
check = false;
for(int i = 0; i < array.length; i++){
if(array[i] == target){
check = true;
}
}
return check;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.