java复习题5

1、String x = “abc” 和 String x = new String(“abc”)有什么区别?
String x = “abc”; x变量引用的是数据段中的字符串常量对象。
String x = new String(“abc”); x变量引用的是堆空间中的字符串对象。在堆空间中产生字符串对象之前,需要以数据段中的字符串常量对象作为模版,将内容拷贝在堆空间中。所以,这样的创建方式可能产生两个字符串对象。

2、正则表达式中,+、*、?、\d、\s、\w各代表什么含义?
+:等价于{1,}。最少出现一次,没有上限限制
*:等价于{0,}。可以不出现,也可以出现多次
?:等价于{0,1},可以不出现,要出现只能出现一次
\d:等价于[0-9]。匹配数字。
\s:匹配空格和回车。
\w:等价于[a-zA-Z0-9_]。匹配合法标识符。

3、String和StringBuffer的区别?
String具有长度不可改变的特性。对字符串进行添加、删除、替换时,不会改变字符串对象的内容,而是产生新的字符串对象。在需要对字符串频繁操作时,效率很低。
StringBuffer是缓冲区中的对象,对StringBuffer进行添加、删除、替换时,不会产生新对象,而是改变StringBuffer中的内容,效率较高,线程安全。
在开发中,如果需要对字符串频繁操作时,一般使用StringBuffer进行操作,如果最后需要使用字符串时,调用StringBuffer的toString方法转化为字符串。

4、如何将字符串转化为基本数据类型?
int x = Integer.parseInt(“20”);

5、如何将日期对象进行"2011-12-10"格式化输出?
SimpleDateFormat dateFormat = new SimpleDateFormat(“yyyy-MM-dd”);
String str = dateFormat.format(Date日期对象);

6、javaBean规范有哪些内容?
1)必须提供公有的无参构造方法。
2)私有属性+get/set方法,进行属性的访问和设置。
3)实现序列化接口Serializable

7、集合的作用是什么?集合框架的API结构是怎样的?
集合用于存储、检索、操作、传输对象。
Collection是父接口,有两个子接口:List和Set。另外还有一个单独的Map接口

8、List、Set、Map集合各自有什么特点?
List:线性(存入顺序和取出顺序一致),元素可重复(多个元素可以引用同一个对象)
Set:元素不可重复。
Map:键值对,一个元素可以存放两个对象。键对象不重复。

9、集合元素如何添加?如何删除?如何遍历?
添加:List、Set---------add()
Map---------------put()

删除:remove()
遍历:
List、Set:
for(Object obj : List或Set集合){

}

Map:
Set kset = map集合.keySet();
for(Object key : kset){
Object value = map集合.get(key);
}

10、List接口实现类ArrayList、Vector、LinkedList的区别?
ArrayList:底层采用数组实现,遍历元素、追加元素速度快,中间插入和删除元素速度慢,线程不安全。
Vector:与ArrayList类似,底层也用数组实现。但Vector是线程安全的,性能要低于ArrayList。
LinkedList:采用双向链表实现,元素空间不连续。遍历元素速度慢,中间插入和删除元素速度快。一般用于需要在集合的中间位置,频繁增加或删除元素时使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值