搜索我需要編寫一個方法,當通過了雙陣列ARR,和一個int值目標,返回其整數部分等於目標的項目的第一次出現的索引。初學者通過陣列
例如,如果arr = {1.2,3.6,5.2,9.2,5.6},並且target = 5,則目標必須返回2,如果array爲null,則返回-1。
到目前爲止我的代碼是
public static int yes(double[]arr, int target){
if (arr == null){
return -1;
}
for (int i= 0; i < arr.length(); i++){
if(arr[i] == target)
return i;
}
return 1;
}
和那裏有一個編譯錯誤,我只是不明白雙和int之間的轉換?由於
Double是十進制數(簡化,反正)。整數是一個整數,捨去(截斷)。 比較是5.2是一樣的5不會返回true。你可以通過這樣做將double轉換爲int:'(int)arr [i]' –
雖然這段代碼非常簡單,但下一次當您尋找編譯器錯誤的幫助時,您應該提供(a)錯誤消息和(b)它發生的路線。 –