2017-03-06 70 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;