- 相關(guān)推薦
Java基礎(chǔ)語(yǔ)法面試題
引導(dǎo)語(yǔ):Java的主要工作是通過(guò)編程語(yǔ)言來(lái)制作互聯(lián)網(wǎng)頁(yè)面、制作動(dòng)態(tài)效果以及網(wǎng)站等技術(shù),以下是小編整理的Java基礎(chǔ)語(yǔ)法面試題,歡迎參考閱讀!
short s1 = 1; s1 = s1 + 1;有什么錯(cuò)?
對(duì)于short s1 = 1; s1 = s1 + 1;由于s1+1運(yùn)算時(shí)會(huì)自動(dòng)提升表達(dá)式的類型,所以結(jié)果是int型,再賦值給short類型s1時(shí),編譯器將報(bào)告需要強(qiáng)制轉(zhuǎn)換類型的錯(cuò)誤。
對(duì)于short s1 = 1; s1 += 1;由于+=是java語(yǔ)言規(guī)定的運(yùn)算符,java編譯器會(huì)對(duì)它進(jìn)行特殊處理,因此可以正確編譯。
&& 和 & 的區(qū)別
&& :稱為短路與,當(dāng)左邊表達(dá)式結(jié)果為false時(shí),右邊表達(dá)式將不再運(yùn)算。
& : 是位運(yùn)算符,當(dāng)用于邏輯運(yùn)算時(shí),無(wú)論左邊表達(dá)式結(jié)果為true還是false,右邊都運(yùn)算。
用最有效率的方法算出2乘以8等于幾?
答案:2 << 3
解析:因?yàn)閷⒁粋(gè)數(shù)左移n位,就相當(dāng)于乘以了2的n次方,那么,一個(gè)數(shù)乘以8只要將其左移3位即可,而位運(yùn)算cpu直接支持的,效率最高。所以,求2乘以8的最效率的方法是2 << 3。
switch語(yǔ)句能否作用在byte上,能否作用在long上,能否作用在String上
答案:byte可以,long,String不行。
解析:在switch(expr1)中,expr1只能是一個(gè)整數(shù)表達(dá)式或者枚舉常量(更大字體),整數(shù)表達(dá)式可以是int基本類型或Integer包裝類型,
由于,byte,short,char都可以隱含轉(zhuǎn)換為int,所以,這些類型以及這些類型的包裝類型也是可以的。顯然,long和String類型都不符合switch的語(yǔ)法規(guī)定,并且不能被隱式轉(zhuǎn)換成int類型,所以,它們不能作用于swtich語(yǔ)句中。
【Java基礎(chǔ)語(yǔ)法面試題】相關(guān)文章:
java語(yǔ)法基礎(chǔ)06-27
Java基礎(chǔ)語(yǔ)法09-10
java的基礎(chǔ)語(yǔ)法教學(xué)06-21
Java語(yǔ)法基礎(chǔ)for語(yǔ)句練習(xí)09-21
Java基礎(chǔ)面試題集錦09-02