java智慧流面试笔试题大全含答案
1 下列关于栈的描述错误的是(B)
A. 栈是先进后出的线性表 (推荐学习:java程序员面试题)
B. 栈只能顺序存储
C. 栈具有记忆功能
D.对栈的插入和删除操作中,不需要改变栈底指针
2 对于长度为 n 的线性表,在最坏的情况下,下列个排序法所对应的比较次数中正确的是(D)
A. 冒泡排序为n/2
B. 冒泡排序为n
C. 快速排序为n
D. 快速排序为n(n-1)/2
3 阅读下列代码后, 下列正确的说法是(A)
public class Person{ int arr[] = new int[10]; public static void main( String args[ ]){ System.out.println(arr[1]); } }
A 编译时将产生错误
B 编译时正确,运行时将产生错误
C 输出空
D 输出0
4 执行以下程序后输出的结果是(D)
public class Test { public static void main(String[] args) { StringBuffer a = new StringBuffer("A"); StringBuffer b = new StringBuffer("B"); operator(a,b); System.out.println(a+","+b); } public static void operator(StringBuffer x,StringBuffer y){ x.append(y); y=x; } }
A . A,A
B. A,B
C. B,B
D. AB,B
5 下列不属于持久化的是(A)
A. 把对象转换成为字符串的形式通过网络传输,在另一端接收到字符串把对象还原出来
B. 把程序数据从数据库中读出来
C. 从XML配置文件中读取程序的配置信息
D. 把程序数据保存为文件
6 下列代码输出的结果是(C)
int x= 0; int y=10; do{ y--; ++x; }while(x<6); System.out.println(); }
A. 5,6
B. 5,5
C. 6,5
D. 6,6
7 一个栈的输入序列为 123,则下列序列中不可能是栈输出的序列的是(C)
A. 2 3 1
B. 3 2 1
C. 3 1 2
D. 1 2 3
8、当n = 5时, 下列函数的返回值是(D)
int foo(int n){ if(n<2) return n; return foo(n-1)+foo(n-2); }
A. 1
B. 8
C. 7
D. 5
9 解释一下什么是 Servlet, 说一说 Servlet 的生命周期
Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。 它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。
Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机Servlet生命周期可以分成四个阶段:加载和实例化、初始化、服务、销毁。
当客户第一次请求时,首先判断是否存在 Servlet 对象,若不存在,则由 Web 容器创建对象,而后调用 init()方
法对其初始化,此初始化方法在整个Servlet生命周期中只调用一次。
完成Servlet对象的创建和实例化之后,Web容器会调用Servlet对象的service()方法来处理请求。
当Web容器关闭或者Servlet对象要从容器中被删除时,会自动调用destory()方法。
10 过滤器有哪些作用和用法?
对于一个 web 应用程序来说,过滤器是处于 web 容器内的一个组件,它会过滤特定请求资源请求信息和响应信息。一个请求来到时,web 容器会判断是否有过滤器与该信息资源相关联,如果有则交给过滤器处理,然后再交给目标资源,响应的时候则以相反的顺序交给过滤器处理,最后再返回给用户浏览器。
常见的过滤器用途主要包括:对用户请求进行统一认证、对用户的访问请求进行记录和审核、对用户发送的数据进行过滤或替换、转换图象格式、对响应内容进行压缩以减少传输量、对请求或响应进行加解密处理、触发资源访问事件等。
11 2006 年某人连续打工 24 天,共赚了 190 元(日工资 10 元,星期日工资 5 元,星期日休息无工资)。已知他打工是从 1 月下旬的某一天开始的,这个月的 1 日恰好是星期日,这人打工结束的那一天是 2 月(C)日
A. 2月6日
B. 2月14日
C. 2月18日
D. 2月21日
12 由甲地到乙地有一天线路的巴士,全程行驶时间 42 分钟,到达总站后,司机至少休息 10 分钟,巴士就掉头行驶,如果这条线路甲,乙两边总站每隔 8 分钟都发一辆(不必是同一时间),则这条线路至少需要是多少俩巴士(C)
A. 15
B. 14
C. 13
D.12
13 编号为 1 至 10 的 10 个果盘中,每盘都盛有水果,共盛放 100 个。其中第一盘里有 16个,并且编号相邻的三个果盘中水果是的和都相等,求第 8 盘中水果最多可能有几个(A)
A. 11
B. 12
C. 13
14. 14
14 一只蜗牛掉进 20 米深的井中,白天往上爬 3 米,晚上有掉下去 2 米,请问要几天才能爬出来?
第一天爬了3米,然后掉了2米,实际上爬了1米;
第二天从1米处开绐向上爬了3米,然后掉了2米,实际上爬了2米;
第三天从2米处开绐向上爬了3米,然后掉了2米,实际上爬了3米;
. .......
第十八天从17米处开始向上爬了3米,嘿刚好是20米.到了
正解:18
15 假设一个池塘,里面有无穷多的水,现在有 2 个空水壶容积分别是 5 升和 6 升,问如何用这两只水壶取得 3 升水。
答案:5L桶打满水,全部倒入6L桶;
5L桶再次打满,往6L桶倒水至其满。此时5L桶留下4L水;
6L桶清空,将5L桶中的4L水倒入6L桶;
5L桶打满水,往6L桶倒水至其满,则5L桶中得3L水。
16 在房里有三盏灯,房外有三个开关,在房外看不见房内的情况,你只能进门一次,你用什么方法来区分那个开关控制哪一盏灯。
答案:先打开第一个开关,开一会再关上,然后打开第二个开关进入房间再摸一下每个灯,发热的那盏是第一个开关的,亮的那盏是第二个开关的,没变化的那盏是第三个开关的 。
17 两个盲人,他们各自买个两双黑袜和白袜,8 双袜子的布质,大小完全相同,每双袜子都有 1 张商标纸连着,两位盲人不小心把 8 双袜子混在的一起,问他们怎样才能取回黑袜和白袜各两双。
答案:把每双袜子分成两只。
每人各拿一只。
这样,每人手中就有四只黑袜,四只白袜。
每人也就有两双黑袜,两双白袜了。
18 一楼到十楼的每层电梯门口都方和一颗钻石,钻石大小不一,你乘坐电梯从一楼到十楼,每层楼电梯门都会打开一次,手里只能拿一颗钻石,问怎样才能拿到最大的钻石。
答案:电梯每层都会开一下的,所以,在第一层就拿,到第二层,看到更大就换一下,更小就不换,一直这样上去,到最上层后,拿到的就是最大的