搜狗2014校园招聘笔试题
23 November 2013
11月23号去清华参加的笔试,那时候Java准备的还算充分了,笔试答的还可以,面试的时候看到Java和数据结构方面分别错了2个,很不错了。搜狗是一家非常好的公司,据说待遇是13.5x15,还带期权,马上要上市的公司。我也很想去。一面很顺利,一共面了20min,面试官说知道我的能力,让我直接进复试。当时我特别高兴,因为过了一面其实已经一只脚踩进了搜狗。二面的时候,面试官很强势,再加上我很期待进入这家公司,很是紧张。他直奔主题,问我看过哪些Java源代码,Java虚拟机垃圾回收具体用的是什么方法,后台服务器解决并发请求时常见的工具和解决方案是什么。这些都答的马马虎虎。最后一个算法,有10G的文件,里面保存着网站的黑名单,怎么样在处理用户请求时查找到该用户时候存在于黑名单中。此算法我写了半个多小时,勉强写完。我和搜狗的情节也就此画上了句号。一方面自己能力还是有限,另一方面,其实我还是有机会进入这种牛逼互联网公司的,加油。最后附上当时拍的搜狗的照片。
#####1. 以下关于JSTL和EL表述正确的有:(CD)
- A. JSTL标签
<c:if>
和<c:when>
都拥有test属性 - B. 使用JSTL标签
<fmt:formatDate format=”yyyy年MM月dd日 HH点mm分ss秒”
可以得到”2009年01月05日22点00分23秒”
格式的时间值 - C. 使用EL表达式可以输出request中的值
- D. 使用EL表达式可以输出cookie中的值
#####2. 一下程序执行后将有(C)个字节被写入到文件afile.txt中。
try {
FileOutputStream fos = new FileOutputStream(“afile.txt”);
DataOutputStream dos = new DataOutputStream(fos);
dos.writeInt(3);
dos.writeChar(1);
dos.close();
} catch(IOException e) {}
- A. 3
- B. 5
- C. 6
- D. 不确定,与软硬件环境有关
char占两个字节,int占4个。
#####3. 下面哪些说法是正确的(D)
- A. 如果引用x和引用y表示2个不同的对象,那么x.equals(y)始终为false
- B. 如果引用x和引用y表示2个不同的对象,那么(x.hashCode()==y.hashCode())始终为false
- C. Object的hashCode方法被声明为final
- D. 所有数组都有一个clone()方法
#####4. 哪两个说法是正确的?()
class A {
A() {}
}
class B extends A {
} * A. B类的构造函数应该是public * B. B类的构造器应该是没有参数的 * C. B类的构造器应该调用this() * D. B类的构造器应该调用super()
#####5. 下面代码的输出为:(C)
String s = “hello world”;
String s1 = “Hello world”;
s.replace(“hello”, “Hello”);
System.out.println((s == s1) + “,” + s.equals(s1)); * A. true, true * B. false, true * C. false, false * D. true, false
String的replace不会改变String的内容,只能返回一个被修改的字符串。
#####6. 下面那些类,不是实现于Collection接口(C)
- A. TreeSet
- B. ArrayList
- C. HashMap
- D. Vector
ABD都是实现的List接口。HashMap实现Map接口。
#####7. 下列哪些不是JSP中的隐含变量(A)
- A. session
- B. servletContext
- C. config
- D. application
#####8. 以下对Java垃圾收集的描述中正确的是()
- A. 发生垃圾回收时,如果一个对象被垃圾收集器认定为不可达,那么它一定会被垃圾回收器回收
- B. 一个对象的finalize()方法可能会被垃圾收集器调用多次
- C. 发生垃圾回收时,无论回收之后的内存是否足够,都会回收掉都被SoftReference的内存
- D. 一个对象是否被PhantomReference引用完全不会对它的生命周期造成影响
#####9. 下列Java类中,哪个类不是线程安全的(D)
- A. StringBuffer
- B. Hashtable
- C. Vector
ABC都是线程安全的。
#####10. 下列Java程序的输出是什么?(C)
public class Test{
public static String output=””;
public static void test(int i) {
try {
if (i == 0) {
throw new Exception();
}
output += “a”;
} catch (Exception e) {
output += “b”;
return ;
} finally {
output += “c”;
}
output += “d”;
}
public static void main(String args[]) {
test(3);
test(0);
System.out.println(output);
}
} * A. adb * B. acbc * C. acdbc * D. acdbcd
如果try执行了,finally不论有没有Exception都会被执行,而且即使之前return了还是会执行完再return。
#####11. 对于变量StringBuilder str = new StringBuilder(“搜狗Sogou”),下面描述正确的是(C)
- A. str.length()的值为11
- B. str.capacity()的值为11
- C. str.indexOf(“S”)的值为2
- D. str.charAt(6)为g
Java中char可以表示中文,且每个char占两个字节。该字符串长度为7个单位。catapcity是字符串长度加16,为23。S的下标为2(从0开始算)。
#####搜狗大厦
#####搜狗的茶水间里等待二面
#####旁边的Google中国
原文链接:搜狗2014校园招聘笔试题,转载请注明来源!
–EOF–