Long类型的变量怎么初始化Long a=1;
报错:cannot convert from int to Long;

解决方案 »

  1.   

    在Java中,long的初始化是要在数据的后面加上L(或l)的,类似的float的初始化也要在数据的后面加上f
      

  2.   

    3,4楼看清楚,是 Long a = 1;
    另外 long a = 1; 也完全可以,只有大于 2147483647 的常量才必须加后缀 L。
    真正原因是 Long 只有一个 Long Long.valueOf(long l) 方法,而没有 Long Long.valueOf(int l)。
      

  3.   

    Long l = 123l;   //自动装箱
    long l2 = 123;   //隐式类型转换
    Long l3 = new Long(2);  //引用类型
      

  4.   

     long a = 1 ;
        Long c = new Long(1) ;
        Long b = 1 ;
        Long d = 1l ;
    测试过了,在java中前两个是可以的,后两个是不允许的。
      

  5.   

    Long a=1; 
    你这里的是Long,而不是long。Long a只是产生了一个对象变量,而没有进行实例化啊。
    当然你可以使用Long a=1L;此处实际上就是Long a=new Long(1);
      

  6.   

     Long l = 1L;
    装箱。
      

  7.   

    Long a=1;
    java的自动装箱功能,1是int,所以能装箱成Integer,但是Long不是Integer的父类,所以不能将一个Integer对象赋给一个Long的引用
    如果Number a=1;这样就可以,因为Number类是Integer的父类.
    再举个例子
    Integer i=new Integer(2);
    long l=i;可以 因为Integer自动解箱为int,再转为long
    Long l2=i;不可以 Long不是Integer的父类 
      

  8.   

    Long是wapping类型
    对象用之前要实例化了
      

  9.   

    Long a = 1L;成功的前提好像是JDK1.5 above吧?