Java面试题(2014年6月24)

时间:2023-01-12 12:48:30

快毕业了,面试经验几乎为0,为了张张见识,多份经历。也为自己多份选择,参加了6、7次面试,结果凑合吧。有时间将面试、笔试中遇到的问题记录下来。其实,面试不只是选择的过程也是交流 的过程,这其中也可以有不少收获。

时间不早了,明天待续……

 去哪儿网笔试、面试题

据个人了解第一道题一般与字符串有关

第二道题属开放题。数据量较大的算法题。

eg:1.给出一个前缀字符串、字符串的最小长度及可以追加的字符,写程序输出拼接后的字符串。

2.写程序实现int到String类型数据的转换(不可以用现有函数)。

3.请使用自己实现的stack,实现一个整型表达式求值的函数,表示式支持的运算符有()*/+-具体说明如下

1).*/优先级高于+-

2).表达式中相同优先级的操作符自左向右计算

3.)函数输入字符串"1+(4-3)*5/5",函数返回结果为2

4.使用api中stack,将前缀转为后缀

开放题:

1有100亿条数据找出其中前100个小的数

2.10*10矩阵,首先随机存数,然后模4求余 0表示红,1表示蓝,2表示黑3表示白
求出出5个颜色一样的连成一线(就是五子棋)

3.某相亲网站有1000万用户,要求写程序找出最匹配的前100对。你可以充分发挥想象力,比如:生肖、星座比较和

4.根据IP判断是哪个城市,10亿数据。

面试题:

1.JVM GC原理

2.数据库索引是怎么实现的

3.为什么快排比冒泡快

4.针对应聘者做过的项目,问一些问题

京东移动商城开发部笔试、面试题

1.Spring AOP的实现原理

2.线程间的通讯是怎么实现的

3.线程同步的实现

4.线程的创建方法

5.线程阻塞的原理

6.常用的设计模式有哪些,开源框架用到了哪些设计模式

7.设计一个商品限时抢购的业务流程,注意服务器的压力。

面试题

1.List的的存储结构是怎样的

2.nosql有没有了解

3.Linux的常用命令

4.Java工程在Linux下的编译、运行及发布

5.CSS、JS(jQuery)

中科软笔试、面试

数据库方面

给出学生成绩表(score)结构说明

字段名称 字段解释 字段类型 字段长度 约束
sc_number 学号 字符 8 PK
sc_name 姓名 字符 50 Not null
sc_sex 性别 字符(男:1,女:0) 2 Not Null
sc_courseid 课程号 字符 5 PK
sc_score 分数 数值 3 Not null
sc_ismakeup 当前考试是否为补考 字符(补考:1,非补考:0) 2 Not null

下面是课程(course)表说明

字段名称 字段解释 字段类型 字段长度 约束
co_id 课程号 字符 5 PK
co_name 课程名 字符 3 Not null
co_desc 课程描述 字符 60  

1.如果学号的前两位表示年级,要查找98级女生的姓名,请写出相应的SQL语句

2.统计参加本次考试的学生人数

3.统计本次考试中每门课程的最高分和最低分

4.要查找所以需要补考(小于60分)的学生姓名和这门课程的名称和成绩,请写出相应的SQL语句

5.查询每个学生需要补考(小于60分)的课程的平均分,并以平均分排序

6(选做题)针对学生考试管理系统,如果要实现学生管理、课程管理、考试成绩管理的基本需求,请根据你对需求的理解,使用UML或者E-R图的方式给出一个简洁明了的数据库设计方案

编程语言方面

一.选择题

1.public class test{

  public static void main(String [] args){

     String s = new String("Hello");

     modify(s);

     System.out.println(s);

 }

  public static void modify(){

       s+="world!";

  }

}
A. The program runs anf prints "Hello"

B. an error causes compilation to fail

C. The program runs anf prints "Hello world!"

D. The program runs aborts with an exception

2. public class test{

        public stattic String output = "";

        public static void foo(int  i){

           try{

                if(i==1){

                       throw new Exception();    

                }

                output += "1";

           }catch(Exception e){

                output += "2";

                return;

           }finally{

               output += "3";

         }

         output += "4";

        }

        public static void main(String[] args){

              foo(0);

              foo(1); 

       }

   }

Which range of x value would print the string "second"?

A. x>0

B.x>-3

C.x<=-3

D.X<=0 & x>-3

二.简答题

1.列举JSP中的内置对象,同一应用中页面间传值有哪些方式

2.JSP如何获取HTML FORM中的数据

3.介绍在JSP中如何使用JavaBeans,如何使用一个已经定义好的类

4.下面是Javascript语法写的一个函数,请说明该函数的作用是什么,并举例说明返回值代表的意义

function myfunction(param1,param2){
  var strValue=param1.split("-");

  var param1Temp = new Date(strValue[0]+"/"+strValue[1]+"/"+strValue[2]);

  strValue = param2.split("-");

  var param2Temp = new Date(strValue[0]+"/"+strValue[1]+"/"+strValue[2]);

  if(param1Temp.getTime() ==param2Temp.getTime() )

          return 0;

 else if(param1Temp.getTime() > param2Temp.getTime())

         return 1;

 else

        return 2;

}

5.有两个类,personSchema、personDB。personSchema描述数据库中person表的一条记录,类personDB是对类personSchema进行插入、删除及更新的操作类。

public class personSchema{

//属性及对应的get、set方法

}

public class personDB{

     public Boolean insert(personSchema tpersonSchema){

     // 插入

     }

    public Boolean update(personSchema tpersonSchema){

     // 修改

     }

     public Boolean delete(personSchema tpersonSchema){

     // 删除

     }

    public personSchemagetById(String id){

     // 根据编码来查询该人员

     }

}

(1)请写一段代码实现:插入员工编号(id)为ht000001并且名称为”张三“的人员

(2)请写一段代码实现,把刚插入的数据修改为”李四“

6.编写一个完整的程序实现如下功能:从键盘输入数字n,程序自动计算n!,并输出。(注:1 n!=1*2*3*4……*n,注2:请使用递归实现)(可以使用任何开发语言,最好使用Java)