2015年java面试题

原创 2015年07月07日 15:41:50

本人是天津师范大学研究生一年级学生,为了增进自己的Java编程水平和思想,四处寻求最好的实习和工作机会。以下就是本人的面试经历:

1.hashtable和hashmap区别

实话说拿到这个题目的时候我也就蒙了,基本上也没怎么使用过hashtable。后面通过查找一些比较靠谱的网站得出答案,可供参考。

(1)HashTable的方法是同步的,HashMap未经同步,所以在多线程场合要手动同步HashMap这个区别就像Vector和ArrayList一样。

(2)HashTable不允许null值(key和value都不可以),HashMap允许null值(key和value都可以)。

(3)HashTable有一个contains(Object value),功能和containsValue(Object value)功能一样。

(4)HashTable使用Enumeration,HashMap使用Iterator。 以上只是表面的不同,它们的实现也有很大的不同。(5)HashTable中hash数组默认大小是11,增加的方式是old*2+1。HashMap中hash数组的默认大小是16,而且一定是2的指数。

(6)哈希值的使用不同。


2.对hashmap进行遍历

a.对key和value都遍历

HashMap<String,String> hm = new HashMap<>();

for(Entry entry:hm.entrySet()){

entry.getKey(); entry.getValue();

}

b.对key遍历

HashMap<String,String> hm = new HashMap<>();

for(String key:hm.keySet()){...}

c.对value遍历

HashMap<String,String> hm = new HashMap<>();

for(String value:hm.values()){ ...}


3.实现多线程的三种方式

(1)继承Thread

(2)实现Runnable接口

(3)使用ExecutorService、Callable、Future实现有返回值的多线程结果


4.StringBuffer和StringBuilder区别

StringBuffer线程安全,效率较低

StringBuilder线程不安全,效率较高


5.StringBuffer中insert方法和append方法区别。例如append(x等同于)什么

StringBuffer中insert方法有两个参数,可以任意位置进行添加,而append方法只能添加到尾部。


还有两道考算法逻辑的题目(我也没能答出来,要是有答出来的可以留言给我)

第一题:有十二个硬币,其中有一个是伪币(除了重量不一样以为其他都相同),用天平称三次找出伪币。

第二题:有一名老师,他有三个聪明的学生。有一天,老师将三名学生的额头上贴了三个纸条,纸条上面写上了正整数。三名同学只能看见其他两名同学额头纸条上的数字,却看不见自己额头上的数字。但是,这三个数字中其中有某两个数字的和等于第三个数字。老师问第一个同学,你知道你额头纸条上的数字吗?第一个同学回答不知道。继而,问第二个同学也,你知道你额头纸条上的数字吗?第二个同学回答不知道。最后,老师问第三个同学,第三个同学回答是144。你知道其他两名学生额头上的数字吗?

2015年java面试题汇总

  • 2015年06月10日 13:37
  • 63KB
  • 下载

2015年Java工程师面试题总结

一、Java基础 1. String类为什么是final的。 2. HashMap的源码,实现原理,底层结构。 3. 说说你知道的几个Java集合类:list、set、queue、map实现类咯...
  • andybbc
  • andybbc
  • 2016年02月20日 23:34
  • 614

2015年Java开发岗位面试题归类

一、Java基础 1. String类为什么是final的。 2. HashMap的源码,实现原理,底层结构。 3. 说说你知道的几个Java集合类:list、set、queue、m...

2015年iOS面试题整理

15年面试积累。 答案自行百度。

11-面试题总结2015年3月9日第一发

1.请写出一个单例模式 单例模式,即整个应用程序生命周期中,单例类中有且只有一个实例对象,或者是没有。 单例模式:私有静态全局实例、私有构造方法、公开的getInstance方法 /** * @Pr...

08-2015年3月7日面试题总结

1.请写出5个runtimeException?    ①ClassCastException(强制转换异常) Object x=new Integer(0);         System.out....

[web面试] 2015年最新前端开发面试题集合(非常全面)

面试有几点需要注意:(来源程劭非老师 Github: @wintercn | Weibo:寒冬winter) 面试题目: 根据你的等级和职位变化,入门级到专家级:范围↑、深度↑、方向↑。 题目类型: ...

2015年11月 面试题总结

hibernate一级缓存和二级缓存的区别 答:主要的不同是它们的作用范围不同。 一级缓存是session级别的。 也就是只有在同一个session里缓存才起作用。 而二级缓存是sessionFact...
  • shf4715
  • shf4715
  • 2015年10月15日 07:37
  • 1215

2015年 133个 Java经典面试题

Java 面试随着时间的改变而改变。在过去的日子里,当你知道 String 和 StringBuilder 的区别就能让你直接进入第二轮面试,但是现在问题变得越来越高级,面试官问的问题也更深入。  ...

2015年秋季阿里巴巴在线笔试——Java研发师——部分试题分析

d 分析: 从A到B总共12步,向上可以走5步,向右可以走7步。注意,必须向上走5步,向右走7步。 排除从A到P的C3,4.(就是排列组合那个符号),和从P到B的C2,8。共有 C5,12 -C...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:2015年java面试题
举报原因:
原因补充:

(最多只允许输入30个字)