||首先計算其左邊的表達式,如果它的值不爲false或不可被轉換爲false(null、NaN、0或undefined),那麼將返回左邊表達式的值,否則,它將計算右邊的表達式, 並返回這個表達式結果作爲 || 運算的結果。?
- <HTML>??
- ?<HEAD>??
- ??<TITLE>?運算符&&和||的返回值?</TITLE>??
- ?</HEAD>??
- ?<BODY>??
- ?&&首先計算其左邊的表達式,如果它的值<font?color=blue>爲false</font>或<font?color=blue>可被轉換爲false</font><font?color=red>(null、NaN、0或undefined)</font>,那麼將返回左邊表達式的值,否則,它將計算右邊的表達式, ??
- ?並返回這個表達式結果作爲?&&運算的結果。<br>??
- ||首先計算其左邊的表達式,如果它的值<font?color=blue>不爲false</font>或<font?color=blue>不可被轉換爲false</font><font?color=red>(null、NaN、0或undefined)</font>,那麼將返回左邊表達式的值,否則,它將計算右邊的表達式, ??
- ?並返回這個表達式結果作爲?&&運算的結果。 ??
- ?<hr>??
- ??<SCRIPT?LANGUAGE="JavaScript">??
- ????function?dwn(s) ??
- ????{ ??
- ????????document.write(s?+?"<br/>"); ??
- ????} ??
- ??
- ????dwn("null?&&?33?=?"?+?(null?&&?33));//null ??
- ????dwn("NaN?&&?33?=?"?+?(NaN?&&?33));//NaN ??
- ????dwn("0?&&?33?=?"?+?(0?&&?33));//0 ??
- ????dwn("undefined?&&?33?=?"?+?(undefined?&&?33));//undefined ??
- ????dwn("true?&&?33?=?"?+?(true?&&?33));//33 ??
- ????dwn("false?&&?33?=?"?+?(false?&&?33));//false ??
- ????dwn("33?&&?44?=?"?+?(33?&&?44));//44 ??
- ????dwn("---------"); ??
- ??
- ????dwn("null?||?33?=?"?+?(null?||?33));//33 ??
- ????dwn("NaN?||?33?=?"?+?(NaN?||?33));//33 ??
- ????dwn("0?||?33?=?"?+?(0?||?33));//33 ??
- ????dwn("undefined?||?33?=?"?+?(undefined?||?33));//33 ??
- ????dwn("true?||?33?=?"?+?(true?||?33));//true ??
- ????dwn("false?||?33?=?"?+?(false?||?33));//33 ??
- ????dwn("33?||?44?=?"?+?(33?||?44));//33 ??
- ???? ??
- </SCRIPT>??
- <hr>??
- 同時javascript中?if?(expression)?statement;?語句的判斷也是<br>??
- 看?expression?是否是不是?false?或?能不能轉換成false(null、NaN、0或undefined)<br>??
- 如果能?則不執行?statement;?否則就執行?statement; ??
- <hr/>??
- <SCRIPT?LANGUAGE="JavaScript">??
- <!-- ??
- ????if?(null) ??
- ????????dwn("null?test"); ??
- ????if?(0) ??
- ????????dwn("0?test"); ??
- ????if?(undefined) ??
- ????????dwn("undefined?test"); ??
- ????if?(NaN) ??
- ????????dwn("NaN?test"); ??
- ????if?(444) ??
- ????????dwn("444?test"); ??
- //-->??
- </SCRIPT>??
- <hr>??
- 由此可見,if?(a==b)dosth();和a==b&&dosth();或a!=b||dosth()等價 ??
- ??
- ?</BODY>??
- </HTML>??
true && false || true 是 true 還是 false
答案:true
int i = 1 / 0;
int j = 1 % 0;
double k = 1.0 / 0;
i,j,k三條語句執行後分別顯示什麼
答案:
語句一?
Exception in thread "main" java.lang.ArithmeticException: / by zero?
語句二?
Exception in thread "main" java.lang.ArithmeticException: / by zero?
語句三?
k is Infinity?
當查看JDK的文檔的時候,我們可以清楚的看到,double和float是允許除以0的,而int是不允許除以0的。?
double l = 1.0 % 0;?
輸出:l is NaN