java語言

當前位置 /首頁/計算機/java語言/列表

Java基礎語法面試題

引導語:Java的主要工作是通過程式設計語言來製作網際網路頁面、製作動態效果以及網站等技術,以下是小編整理的Java基礎語法面試題,歡迎參考閱讀!

Java基礎語法面試題

  short s1 = 1; s1 = s1 + 1;有什麼錯?

對於short s1 = 1; s1 = s1 + 1;由於s1+1運算時會自動提升表示式的型別,所以結果是int型,再賦值給short型別s1時,編譯器將報告需要強制轉換型別的`錯誤。

對於short s1 = 1; s1 += 1;由於+=是java語言規定的運算子,java編譯器會對它進行特殊處理,因此可以正確編譯。

  && 和 & 的區別

&& :稱為短路與,當左邊表示式結果為false時,右邊表示式將不再運算。

& : 是位運算子,當用於邏輯運算時,無論左邊表示式結果為true還是false,右邊都運算。

  用最有效率的方法算出2乘以8等於幾?

答案:2 << 3

解析:因為將一個數左移n位,就相當於乘以了2的n次方,那麼,一個數乘以8只要將其左移3位即可,而位運算cpu直接支援的,效率最高。所以,求2乘以8的最效率的方法是2 << 3。

  switch語句能否作用在byte上,能否作用在long上,能否作用在String上

答案:byte可以,long,String不行。

解析:在switch(expr1)中,expr1只能是一個整數表示式或者列舉常量(更大字型),整數表示式可以是int基本型別或Integer包裝型別,

由於,byte,short,char都可以隱含轉換為int,所以,這些型別以及這些型別的包裝型別也是可以的。顯然,long和String型別都不符合switch的語法規定,並且不能被隱式轉換成int型別,所以,它們不能作用於swtich語句中。

TAG標籤:面試題 語法 JAVA #