這個月初面試了兩家公司,還在等結果,其中一些題目記下來和大家共同學習:
1 NIO和IO的區別,用NIO方式實現複製字符串到方本中;
2 怎麼把一個字符串轉化爲十進制;
3 Android怎麼實現屏幕適配;
4 實現一個快速排序算法並提出可能的優化方案;
5 考多線程併發控制;
6 怎麼樣實現性能優化
這個問題可以講得有太多,自己之前答的都比較膚淺。
7 2 10 11 12 20 21 22 100這一組數有什麼規律
自己當時沒有想出來,太鬱悶了。答案是:1 2 3 4 5 6 7 8 9 的3進製表示。
8
import java.util.ArrayList;
class TestB {
public TestB() {
System.out.println("Q");
init();
}
public void init() {
// TODO Auto-generated method stub
System.out.println("P");
}
}
public class Test extends TestB {
public int i = 1;
public Test() {
System.out.println(i+" ");
}
public void init() {
System.out.println("C");
i = 2;
}
public static void main(String[] args) {
Test test = new Test();
}
}
上面的輸出結果是什麼?
在Eclipse上運行的結果是:Q C 1.不知道爲什麼i的值沒有被改變。
9 java基於類型取值範圍
byte的取值範圍爲-128~127,佔用1個字節(-2的7次方到2的7次方-1)
short的取值範圍爲-32768~32767,佔用2個字節(-2的15次方到2的15次方-1)
int的取值範圍爲(-2147483648~2147483647),佔用4個字節(-2的31次方到2的31次方-1)
long的取值範圍爲(-9223372036854774808~9223372036854774807),佔用8個字節(-2的63次方到2的63次方-1)