2019年12月23日 java1
考点1 java集合旧类和新类的区别
ArrayList和Vector主要区别是什么?
- A
Vector
与ArrayList
一样,也是通过数组实现的,不同的是Vector
支持线程的同步 - B
Vector
与ArrayList
一样,也是通过数组实现的,不同的是ArrayList
支持线程的同步 - C
Vector
是通过链表结构存储数据,ArrayList
是通过数组存储数据 - D 上述说法都不正确
解析
显示答案/隐藏答案
正确答案: AVector与ArrayList的主要区别
同步性:
- Vector是线程安全的,也就是说是同步的而
- ArrayList是线程序不安全的,不是同步的。
数据增长:当需要增长时,
- Vector默认增长为原来一倍。
- 而ArrayList却是原来的50%,这样,ArrayList就有利于节约内存空间。
如果涉及到堆栈,队列等操作,应该考虑用Vector,
如果需要快速随机访问元素,应该使用ArrayList 。
Hashtable与HashMap
Hashtable和HashMap它们的性能方面的比较类似
Vector和ArrayList,比如Hashtable的方法是同步的,而HashMap的不是。
ArrayList与LinkedList
ArrayList的内部实现是基于内部数组Object[],所以从概念上讲,它更象数组,
但LinkedList的内部实现是基于一组连接的记录,所以,它更象一个链表结构,所以,它们在性能上有很大的差别:
在ArrayList的前面或中间插入数据时,你必须将其后的所有数据相应的后移,这样必然要花费较多时间,所以,当你的操作是在一列数据的后面添加数据而不是在前面或中间,
需要随机地访问其中的元素时,使用ArrayList会提供比较好的性能;
而访问链表中的某个元素时,就必须从链表的一端开始沿着连接方向一个一个元素地去查找,直到找到所需的元素为止,所以,当你的操作是在一列数据的前面或中间添加或删除数据,并且按照顺序访问其中的元素时,就应该使用LinkedList了。
考点2 java包装类 数据转换
关于Float,下列说法错误的是()
- A
Float
是一个类 - B
Float
在java.lang
包中 - C
Float a=1.0
是正确的赋值方法 - D
Float a= new Float(1.0)
是正确的赋值方法
解析
显示答案/隐藏答案
正确答案: C- Float是类,float不是类.
- 查看JDK源码就可以发现Byte,Character,Short,Integer,Long,Float,Double,Boolean都在java.lang包中.
- Float正确复制方式是Float f=1.0f,若不加f会被识别成double型,double无法向float隐式转换.
- Float a= new Float(1.0)是正确的赋值方法,但是在1.5及以上版本引入自动装箱拆箱后,会提示这是不必要的装箱的警告,通常直接使用Float f=1.0f.
考点4 java短路逻辑运算符
根据下面的代码,
String s = null;
会抛出NullPointerException异常的有()。
- A if( (s!=null) & (s.length()>0) )
- B if( (s!=null) && (s.length()>0) )
- C if( (s==null) | (s.length()==0) )
- D if( (s==null) || (s.length()==0) )
解析
显示答案/隐藏答案
正确答案: AC- 逻辑运算符:&&和|| 是按照“短路”方式求值的。如果第一个操作数已经能够确定表达式的值,第二个操作数就不必计算了
- 位移运算符:&和| 运算符应用于布尔值,得到的结果也是布尔值,不按“短路”方式计算。即在得到计算结果之前,一定要计算两个操作数的值。
考点5 javaEE JSP生命周期
关于JSP生命周期的叙述,下列哪些为真?
- A
JSP
会先解释成Servlet
源文件,然后编译成Servlet
类文件 - B 每当用户端运行
JSP
时,jsp init()
方法都会运行一次 - C 每当用户端运行
JSP
时,jsp service()
方法都会运行一次 - D 每当用户端运行
JSP
时,jsp destroy()
方法都会运行一次
解析
显示答案/隐藏答案
正确答案: ACB:init方法:负责初始化Servlet对象。在Servlet的整个生命周期类,init()方法只被调用一次。
D:destroy方法:销毁Servlet对象,释放占用的资源,Servlet要被卸载时调用
考点6 常用的final类
以下类型为Final类型的为()
- A
HashMap
- B
StringBuffer
- C
String
- D
Hashtable
解析
显示答案/隐藏答案
正确答案: BCStringBuilder , StringBuffer ,String 都是 final 的