算數(shù)運算符
- "/"和"%"的區(qū)別
1 . /運算符
/ 運算符就是求兩個數(shù)相除后得到的數(shù),如果整型數(shù)之間相除得到的為整型數(shù),浮點數(shù)之間相除得到的為浮點數(shù)(不確定****)
2 . %運算符
%運算符就是求兩個數(shù)相除的余數(shù),也稱為取模運算符
需要注意的是,任何整數(shù)都不能對0取模
結(jié)果為:
x的值為:-1
y的值為:1
z的值為:-1
r的值為:1
結(jié)果為:
x的值為:-0.1999999999999993
y的值為:0.1999999999999993
z的值為:-0.1999999999999993
r的值為:0.1999999999999993
由此可以得出規(guī)律,不管是整型數(shù)據(jù)的取模運算還是實型數(shù)據(jù)的取模運算,余數(shù)的符號與被除數(shù)的符號永遠是相同的,與除數(shù)的符號無關(guān)
短路運算符
&和&&區(qū)分
請看下圖:
因為&&是短路運算符,當系統(tǒng)運行到userName != null這個語句的時候已經(jīng)為false,所以系統(tǒng)會直接跳出if語句,進入else語句,輸出結(jié)果userName不合法.
而把if語句中的&&運算符換成&的時候
會出現(xiàn)下圖異常:
這里會報錯的原因是&運算符不是短路運算符,當運算if語句中第一個判斷條件時為false,仍然會繼續(xù)判斷第二個條件,在這里我們又知道userName沒有賦初值,所以空值.equal("")就會報空指針異常
面試題(一):
一個".java"源文件中是是否可以包括多個類(不是內(nèi)部類)?有什么限制.
由下圖實驗可得:
然后我們可以知道一個".java"源文件可以包含多個類,但是只允許有一個public類桑谍,并且類名必須和文件名一致
每個編譯單元只能有一個public 類宏怔。這么做的意思是,每個編譯單元只能有一個公開的接口隙袁,而這個接口就由其public 類來表示滑臊。
你可以根據(jù)需要口芍,往這個文件里面添加任意多個提供輔助功能的package 權(quán)限的類。但是如果這個編譯單元里面有兩個或兩個以上的public 類的話雇卷,程序就不知道從哪里導入了鬓椭,編譯器就會報錯」鼗
所以如果想要包含多個類修飾符只能為默認修飾符