騰訊面試題
1.int a = 1;
int result = a+++3<<2;
2.int a = 2;
int result = (a++ > 2)?(++a):(a+=3);
3.int a = 1234567;
int b = 0x06;
int result = a&b;
4.Integer a = 34556;
Integer b = 34556;
boolean result = a==b;
5.String func(string s ){
return s.length() > 0 ? func(s.subString(1))+ s.charAt(0):"";
}
String result = func("Tencent");
6.byte result = (byte) oxffeffefe;
7.int result = [(oxfe2baf&oxf)|oxff] >> 2/(4<<1);
8.判斷兩個String的交集
比如 A = "Marginle",B = Valaienie", 交集為aie,寫個算法。
9.什么是狀態(tài)機?項目中什么時候用到狀態(tài)機,舉例說明。
10.寫出兩種單例模式
Android基礎(chǔ)
1.Activity和BroadCast Receiver的生命周期
2.寫出幾種service和Activity的交互方式
3.UI線程和非UI線程的交互方式,寫出幾種各自的耗時。
4.requestLayout, invalidate和postInvalidate的異同
5.寫出三種常用layout布局并進(jìn)行解釋
6.http怎么加入超時和代理
7.view的繪制過程,講講draw/onDraw和drawChild這個可以口述。
8.以下是Android sdk的英文文檔請細(xì)讀。
9.100盞燈,全部關(guān)閉,第一人全部打開(亮),第二個人隔一個按開關(guān),第三個人隔2個按開關(guān),以此類推,第100人路過時有幾盞燈亮著?(寫出結(jié)果就行)