有点难度的java笔试题(一)

2014-11-24 10:18:51 · 作者: · 浏览: 2

以下是我在上一家公司出的java笔试题,有些难度,感兴趣的同学可以做做看。

---Question---

1.What is the output of the following program

public class Foo {

public static void main(String[] args){

Map m = new HashMap();

byte[] key = "abcd".getBytes();

m.put(key, "abcd");

System.out.println(m.containsKey(key));

System.out.println(m.containsKey("abcd"));

System.out.println(m.containsKey("abcd".getBytes()));

}

}

a) true,true,false b)true,false,false c)true,true,true d) false,false,false e)Program throws an exception

2. What is the proper string filled in the following program

Public class Foo {

public static void main(String[] args) {

String s=”1\\2\\3\\4”;

//split the string with “\”

String []result = s.split(“____”);

for(String r:result){

System.out.println(r);

}

}

}

a) \ b) \\ c) \\\ d)\\\\ e)\\\\\

3. What is the output of the following program

public class Foo {

public static void main(String[] args) {

char[] c = new char[] { '1' };

String s = new String(c);

System.out.println("abcd" + c);

System.out.println("abcd" + s);

}

}

a) Compile error b)abcd1,abcd1 c) abcd49,abcd1 d) Program throws an exception e)none of above

4. Which class is threading safe which one object can be used between multi-threads without extra synchronized

a) Vector b) HashMap c) ArrayList d)StringBuilder e)HashSet

5. What is the output of the following program

public class Foo {

public static void main(String[] args) throws IOException {

ByteArrayOutputStream baos = new ByteArrayOutputStream();

byte[] b = new byte[]{(byte)0x0,(byte)0x1,(byte)0x2};

baos.write(b);

baos.write(0x0102);

byte[] result = baos.toByteArray();

ByteArrayInputStream bais = new ByteArrayInputStream(result);

System.out.println(bais.available());

}

}

a) 0 b) 1 c)4 d) 5 e) Program throws an exception

6. What is return value of function “calc”

public class Foo {

public static int calc() throws IOException{

int ret = 0;

try{

++ret;

throw new IOException("try");

}

catch(IOException ioe){

--ret;

return ret;

}

finally{

++ret;

return ret;

}

}

}

a) 0 b) 1 c)2 d)3 e) throws an exception

7. What is the output of the following program

public class Foo {

public static class Value {

private int value;

public int get(){

return value;

}

public void set(int v){

value = v;

}

}

public static class Values implements Iterable{

public Values(int capacity){

this.capacity = capacity;

}

int count =1 ;

int capacity;

Value v = new Value();

public Iterator iterator() {

return new Iterat