Java基础从数组到集合之间关键字的区别

Java基础从数组到集合之间关键字的区别

1.&& 和 &区别和联系:

     相同点 : 结果是一样的。

      不同点 :如果使用双&号判断,如果说条件一为false,不会判断条件二,但是单&号会继续判断。

2.|| 和 |区别和联系:     

     相同点 : 结果一样。   

     不同点 : 如果使用||号判断,如果说条件一为true,不会判断条件二,但是单|号会继续判断。

3.==和equals()的区别:
     ==:比较的是地址(引用数据类型)。

    equals:比较的是字符串的值。

4.异常和错误的区别:

   异常:在Java程序中出现程序不正常的情况。
   错误:错误一般是Java虚拟机或者是硬件导致的问题如果程序出现不正常的情况,信息的结尾是以Error就是错误,其他的都是异常。

5.构造函数和一般函数的区别?

   结构上:
       1.构造函数是没有返回值,方法名就是类名。
       2.构造函数是由jvm来调用的,自己是无法手动调用,只会被调用一次。
   作用:
      1.初始化的时候给属性赋值。
      2.描述对象的某种行为。

6.equals与equalsIgnoreCase的区别:

     equals不忽略大小写。

     equalsIgnoreCase忽略大小写。

7.StringBuffer和StringBulider的区别:

     相同点:
        (1).都是字符串缓冲类
        (2).两个雷的方法一样
    不同点:
        (1).StringBuffer线程更安全,操作效率低,StringBulider线程不安全,效率高。
        (2).StringBuffer是jdk1.0就有的,StringBulider1.5才有。

8.List、Map、Set三个接口,存取元素时,各有什么特点?

    List接口,可以有重复的元素,是个有序集合。

    Map接口,双列集合,存储数据以键和值的方式,键不允许重复,值是允许重复的。
    Set接口,不可以有重复的元素,是个无序的集合。

9.Vector 和 ArrayList的区别:

   相同点: Vector和ArrayList 底层都是通过Objec数组来实现的。
   不同点 :
      1.ArrayList 是线程不同步,操作效率高。
         Vector 线程是同步的,操作效率低。
      2.ArrayList 是在jdk1.2出现的,Vector 是在jdk1.0就有了。

10.LinkedList与ArrayList有什么区别?

    LinkedList:添加元素比较快,删除,查找比较慢,元素在内存中是无序的 。
    ArrayList:是存在一个数组(Object[]),添加删除元素很慢,查找很快,元素在内存中是有序的,默认容量为10,如果默认的不够就增加为
                  原来的1.5倍。

11.数组(Array)和列表集合(ArrayList)有什么区别:

   数组:可以包含基本数据类型和对象类型,它的空间是固定,空间不够时不能再次添加,需要时提前设置调试好空间大小。
   ArrayList:只能包含对象类型,它的空间是动态增长的,如果空间不够的时候,它会创建一个比原来大一倍的新数组。

12.成员变量和局部变量额区别:

  定义的位置 :
      1.定义在类中,方法外。
      2.局部变量是定义在方法中。
  作用上:
     1.成员变量是用来描述同一类事物(对象)的公共属性。
     2.局部变量就是提供一个变量给方法使用
  生命周期 :
     1.成员变量随着对象的创建而创建,随着对象的消失而消失。
     2.局部变量随着方法调用而创建,出了方法的作用域就消失。
  初始值来区分:
     1.成员变量,如果你没有赋值,它是有默认值的。
          int 默认是0
          float 默认是0.0f
         double 默认是 0.0
         boolean 默认 false
         char 默认 ' '
         String (引用类型)null;
    2.局部变量:局部变量是没有初始值的,必须初始化才能使用。

猜你喜欢

转载自www.linuxidc.com/Linux/2016-12/137844.htm