3G門戶 Java筆試題分享

學識都 人氣:6.31K

3G門戶Java筆試題(部分大題的大意,非順序) ( I LOVE SCAU)

3G門戶 Java筆試題分享

1.一個長1001的數組,放1-1000這1001個數,有一個是重複的,不要用額外的存儲空間,求出這個數是多少?

將所有元素異或,再與1-1000也異或,結果就是要求的數。

2.輸入一個數,返回它的.逆置,如輸入55821000,返回12855

( 簡單,先去掉n尾部的0)

int method(int n){

if(n==0)return 0;

while(n%10==0)n/=10;

int result=0;

while(n!=0) {

result = result*10+n%10;

n=n10;

}

return result;

}

t s1 = 0; s1 = s1+1; short s1 = 0; s1 += 1; 2種哪一種編譯對,哪種錯?爲什麼?

前面錯 後面對

因爲s1+1是提升爲int運算的,故應該寫s1 = (short)(s1+1) ;而s1 +=1 相當於s1 = (short)(s1+1)

4.抽象類和接口的區別?

5.最後一題,寫程序求將一棵二叉查找樹鏡像(就是左右顛倒,有圖比較好理解)

6. 關於synchronize的,大概是一個線程訪問了同步方法,其他線程還可以訪問這個對象的其他方法嗎(題意有些模糊,我答:可以,前提是“其他方法”是非synchronize的)