2017-03-06 67 views
-3

即時通訊實際上很新到java,我的作業是創建一個數組。 經過一段時間尋找一個好的視頻,我發現這一點。「不是一個聲明」錯誤

-

如果我編譯這個藍色的J顯示我 「INT 1 = 0;」不是一個聲明。

有人可以告訴我錯誤在哪裏嗎?

感謝您的幫助


import java.util.*; 

class binarysearch 
{ 
    public static void main() 
    { 


    Scanner sc= new Scanner (System.in); 
    int num[]= new int [] {23,34,45,56,67,78,89,90,12}; 
    System.out.println("Enter the Number to search"); 
    int n=sc.nextInt(); 
    int u=num.length-1,mid=0; 
    int 1=0; 



    int c=0; 


     while(1<=u) 
     {  

     mid=(1+u)/2; 
     if(n<num[mid]) 
      u=mid-1; 
     if(n>num[mid]) 
      1=mid+1; 
     if(n==num[mid]) 
     { 
      c=1; 
      break; 

     }  


    } 
    if(c==1) 
    System.out.println("search successful"+"\n"+"this number " +n+ "position" +(mid+1)); 
    else 
    System.out.println("Number not found"); 
    } 
} 
+0

想想看:你問的Java分配1 0 – efekctive

+1

提示的價值:有時,我迷惑'i'和'l',但從來沒有'1' –

+0

'1'不是合法的變量名稱。 https://docs.oracle.com/javase/tutorial/java/nutsandbolts/variables.html – jlordo

回答

0

是無效的變量名。用這個聲明,你基本上是告訴Java重新創建數學。因此,int 1 = 0;是不可能編譯的。

考慮重申構造函數:

int i = 0;