在一个比较大的class里面,需要用到很多String成员函数,但是不知道下面哪种声明方法最好:
String aaa;
String aaa=null;
String aaa=new String();请高手帮忙分析一下这几种有什么区别

解决方案 »

  1.   

    我一般都是用String aaa = null;这一个。感觉其它两个,第一个没有初始化,而第三个创建了一个没有什么大作用的对象。但是具体还是要看具体的需要,不同需要可能还是不一样。
      

  2.   

     看情况而定。如果用的不妥当,前两个有可能会出现 nullpointException 。本人一般用第二个。
      

  3.   

    对了还有一种是String aaa=“”;
      

  4.   

    一楼为什么用String aaa=null; 而不用String aaa=“”;呢? 
      

  5.   

    对象类型成员变量赋初始值为null好些.. 就算是你到时候程序抛空指针异常了也很容易就发现是哪个地方的错误,从而改进代码.!
      

  6.   

    坚决别用String aaa=new String(); 这个,别没事创建垃圾对象玩。
      

  7.   

    比较常用的是
    String ss="";
      

  8.   

    使用String ss="",表示该字符串是个空串,
    还有就是像8楼说的,少用那个new ,有时候很烂费。。
    我一般用String ss=null,这样比较容易发现错误,特别是空指针异常
      

  9.   

    我在其他网站上看到的String aaa=“”; 和String aaa=new String(); 是一样的效果 所以这么说这两个都要少用喽!
      

  10.   

    如果是在方法外面定义的(实例变量),会有默认值可以直接使用;如果是在方法里面定义的则使用前先赋值,一般的定义方法是 string = "";当然了,个人习惯不一样,仅供参考。
      

  11.   

    String aa; 创建一个String引用 但是没有初始化,如果没有赋新值的情况下用到该变量的话,那么编译就通不过
    String aa = null;创建一个String空引用引用,并没有在内存中为String开辟空间
    String aa ="";在内存创建一个长度为零的String
    String aa = new String();也就是创建了一个垃圾对象如此看来String aa = null;是最适合的
    其次String aa ="";
    其他两个很少用了