2015-10-14 54 views
-1

我嘗試使用冒泡排序對整數數組進行排序,但是當我嘗試比較索引0與索引1時,它彈出錯誤消息說「表達式的類型必須是一個數組類型,但它解析爲int」。以下是我的代碼。「表達式的類型必須是數組類型,但它解析爲int」

package arraytest; 

public class BubbleSort { 

public static void main(String[] args) { 
    int [] bblSort = {30, 45, 8, 204, 165, 95, 28, 180, 110, 40}; 

    for(int i=0; i<bblSort.length; i++){ 
     System.out.println(i); 
    } 
} 

public void sort(int bblSort){ 

    int temp=0; 
    for(int i=0; i<bblSort-1; i++){ 
     for(int j=0; j<bblSort-1 -i; j++){ 
      if(bblSort[j] > bblSort[j+1]){ 
       temp = bblSort[j]; 
       bblSort[j] = bblSort[j + 1]; 
       bblSort[j+1] = temp; 
      } 
     } 

    } 
} 
} 
+1

的[]在方法定義丟失。它應該是public void sort(int [] bblSort)not public void sort(int bblSort) –

+0

當您發佈時,請記住包含* entire *錯誤消息。在這種情況下,位置(線和字符)會得到更快的響應。請參閱http://stackoverflow.com/help/mcve – Prune

回答

1

嘗試這種情況:

public static int[] sort(int bblSort[]){ 

    int temp=0; 
    for(int i=0; i<bblSort.length-1; i++){ 
     for(int j=0; j<bblSort.length-1 -i; j++){ 
      if(bblSort[j] > bblSort[j+1]){ 
       temp = bblSort[j]; 
       bblSort[j] = bblSort[j + 1]; 
       bblSort[j+1] = temp; 
      } 
     } 

    } 
    return bblSort; 
} 
+0

將不會編譯。那麼'int []'呢? –

+0

你是什麼意思?只是在Eclipse中使用java 1.8來試用它,並且它編譯得很好。另外,從我的基本Java類可以肯定地,我可以互換地使用'int [] name'或'int name []' – javaguest

+0

身體本身可以complile,而'bblSort-1'不應該了。因此,答案是不完整的,並導致另一個錯誤。然而,對於int [] a'和'int a []' –

相關問題